Slutt eller begynnelse av ord i regex i PHP
Kommandoen \b betegner begynnelsen eller slutten
av et ord, og \B, tilsvarende, - ikke
begynnelse og ikke slutten av et ord. Hva er et ord?
Ved første øyekast virker det som noe
avgrenset av mellomrom, men det er ikke helt slik.
Se på følgende streng: house
with fence. Delstrengen 'with' -
er et ord (med mellomrom på begge sider), men
både 'house', og 'fence' er også ord,
som står i begynnelsen og slutten av strengen.
La oss se på den praktiske anvendelsen av denne kommandoen.
I det følgende eksemplet er søkemønsteret slik:
begynnelse av ord, små latinske bokstaver
en eller flere ganger, slutt av ord. Dermed
vil regex finne alle ord og erstatte
dem med '!':
<?php
echo preg_replace('#\b[a-z]+\b#', '!', 'axx bxx xxx exx'); // vil skrive ut '! ! ! !'
?>
Gitt en streng:
<?php
$str = 'aaa xaa aaa xbb aaa';
?>
Skriv et regex-mønster som finner strenger
etter mønsteret: bokstaven 'x' i begynnelsen
av ord.