PHP regulýar ifadelerinde setiriň başy we ahyry

Setiriň başyny ^ ýa-da ahyryny $ belgileýän ýörite nyşanlar bar. Geliň olaryň işini mysallar üstünde göreliň.

Mysal

Bu mysalda gözleg şablon şeýle: 'aaa' diýenini '!' bilen çalyşmak, ýöne diňe ol setiriň başynda bolsa:

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

Netijede üýtgeýjä şu ýazylar:

php'! aaa aaa'

Mysal

Bu mysalda gözleg şablon şeýle: 'aaa' diýenini '!' bilen çalyşmak, ýöne diňe ol setiriň ahyrynda bolsa:

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

Netijede üýtgeýjä şu ýazylar:

php'aaa aaa !'

Mysal

Regulýaryň başynda ^, ahyrynda bolsa $ bolanda, şeýlelik bilen biz setiriň tutuşlygyna regulýara gabat gelýändigini barlaýarys.

Indiki mysalda gözleg şablon şeýle: 'a' harp bir ýa-da birnäçe gezek gaýtalanylýar, tutuş setiri '!' bilen çalyşmak, ýöne diňe ol diňe 'a' harplardan ybarat bolsa.

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

Netijede üýtgeýjä şu ýazylar:

php'!'

Amaly meseläler

Задание 1

Setir berlen:

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

Harpdan bolan ilkinji kiçi setiri tapan regulýar ifadesini ýazyň.

Задание 2

Setir berlen:

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

Harpdan bolan soňky kiçi setiri tapan regulýar ifadesini ýazyň.

Задание 3

Setir berlen:

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

Dollar nyşany bilen çäklenen, harpdan bolan soňky kiçi setiri tapan regulýar ifadesini ýazyň.