Start og slut af linje i PHP regulære udtryk
Der findes specielle symboler, der betegner
starten ^ eller slutningen af linjen $.
Lad os se deres funktion med eksempler.
Eksempel
I dette eksempel er søgemønsteret sådan: erstat
'aaa' med '!' kun, hvis det
står i starten af linjen:
<?php
$str = 'aaa aaa aaa';
$res = preg_replace('#^aaa#', '!', $str);
?>
Som resultat vil følgende blive skrevet i variablen:
'! aaa aaa'
Eksempel
I dette eksempel er søgemønsteret sådan: erstat
'aaa' med '!' kun, hvis det
står i slutningen af linjen:
<?php
$str = 'aaa aaa aaa';
$res = preg_replace('#aaa$#', '!', $str);
?>
Som resultat vil følgende blive skrevet i variablen:
'aaa aaa !'
Eksempel
Når ^ står i starten af det regulære udtryk,
og $ står i slutningen, så checker vi på denne måde
hele linjen som en helhed for overensstemmelse med
det regulære udtryk.
I det næste eksempel er søgemønsteret sådan:
bokstavet 'a' gentages en eller
flere gange, erstat hele linjen med '!'
kun hvis den består udelukkende af bogstaver 'a'.
<?php
$str = 'aaa';
$res = preg_replace('#^a+$#', '!', $str);
?>
Som resultat vil følgende blive skrevet i variablen:
'!'
Praktiske opgaver
Givet en streng:
<?php
$str = 'abc def xyz';
?>
Skriv et regulært udtryk, der finder den første delstreng bestående af bogstaver.
Givet en streng:
<?php
$str = 'abc def xyz';
?>
Skriv et regulært udtryk, der finder den sidste delstreng bestående af bogstaver.
Givet en streng:
<?php
$str = '$aaa$ $bbb$ $ccc';
?>
Skriv et regulært udtryk, der finder den sidste delstreng bestående af bogstaver, omgivet af dollartegn.