Rivin alku ja loppu PHP:n säännöllisissä lausekkeissa

On olemassa erikoismerkkejä, jotka osoittavat rivin alun ^ tai rivin lopun $. Katsotaan niiden toimintaa esimerkkien avulla.

Esimerkki

Tässä esimerkissä hakumalli on seuraava: korvaa 'aaa' merkillä '!' vain, jos se sijaitsee rivin alussa:

php<?php
  $str = 'aaa aaa aaa';
  $res = preg_replace('#^aaa#', '!', $str);
?>

Tuloksena muuttujaan kirjoitetaan seuraava:

php'! aaa aaa'

Esimerkki

Tässä esimerkissä hakumalli on seuraava: korvaa 'aaa' merkillä '!' vain, jos se sijaitsee rivin lopussa:

php<?php
  $str = 'aaa aaa aaa';
  $res = preg_replace('#aaa$#', '!', $str);
?>

Tuloksena muuttujaan kirjoitetaan seuraava:

php'aaa aaa !'

Esimerkki

Kun säännöllisen lausekkeen alussa on ^, ja lopussa - $, tarkistamme tällä tavoin koko merkkijonon vastaavuuden säännölliseen lausekkeeseen.

Seuraavassa esimerkissä hakumalli on seuraava: kirjain 'a' toistuu kerran tai useammin, korvaa koko merkkijono merkillä '!' vain, jos se koostuu pelkistä kirjaimista 'a'.

php<?php
  $str = 'aaa';
  $res = preg_replace('#^a+$#', '!', $str);
?>

Tuloksena muuttujaan kirjoitetaan seuraava:

php'!'

Käytännön tehtävät

Задание 1

Annettu merkkijono:

php<?php
  $str = 'abc def xyz';
?>

Kirjoita säännöllinen lauseke, joka löytää ensimmäisen kirjainmerkkijonon.

Задание 2

Annettu merkkijono:

php<?php
  $str = 'abc def xyz';
?>

Kirjoita säännöllinen lauseke, joka löytää viimeisen kirjainmerkkijonon.

Задание 3

Annettu merkkijono:

php<?php
  $str = '$aaa$ $bbb$ $ccc';
?>

Kirjoita säännöllinen lauseke, joka löytää viimeisen kirjainmerkkijonon, joka on ympäröity dollarimerkeillä.