Sanan loppu tai alku PHP:n säännöllisissä lausekkeissa
Komento \b merkitsee sanan alkua tai loppua,
ja \B vastaavasti - ei
sanan alkua eikä loppua. Mikä on sana?
Ensiluulolla vaikuttaa siltä, että se on jotain,
jota rajaavat välilyönnit, mutta se ei ole aivan niin.
Katso seuraavaa merkkijonoa: house
with fence. Osamerkkijono 'with' -
on sana (molemmin puolin välilyönnit), kuitenkin
myös 'house', ja 'fence' ovat myös sanoja,
jotka ovat merkkijonon alussa ja lopussa.
Katsotaanpa käytännön sovellusta tähän komentoon.
Seuraavassa esimerkissä hakumalli on:
sanan alku, pieniä latinalaisia kirjaimia
yksi tai useampi kerta, sanan loppu. Täten
säännöllinen lauseke löytää kaikki sanat ja korvaa
ne merkillä '!':
<?php
echo preg_replace('#\b[a-z]+\b#', '!', 'axx bxx xxx exx'); // tulostaa '! ! ! !'
?>
Annettu merkkijono:
<?php
$str = 'aaa xaa aaa xbb aaa';
?>
Kirjoita säännöllinen lauseke, joka löytää merkkijonot
mallin mukaan: kirjain 'x' sanan
alussa.