PHP регуляр ифодаларида сатр бошланиши ва тугаши

Сатр бошланиши ^ ёки сатр тугаши $ни ифодаловчи махсус белгилар мавжуд. Келинг, уларнинг ишлашини мисолларда кўрамиз.

Мисол

Ушбу мисолда қидиш намунаси шундай: 'aaa'ни '!'га фақат сатр бошланган жойда алмаштириш:

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

Натижада ўзгарувчига куйидагилар ёзилади:

php'! aaa aaa'

Мисол

Ушбу мисолда қидиш намунаси шундай: 'aaa'ни '!'га фақат сатр тугаган жойда алмаштириш:

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

Натижада ўзгарувчига куйидагилар ёзилади:

php'aaa aaa !'

Мисол

Регуляр бошлангичда ^, охирида эса $ турганда, шу тарзда биз бутун сатрни регулярга мос келишини текширамиз.

Куйидаги мисолда қидиш намунаси шундай: 'a' ҳарфи бир ёки бир неча марта такрорланади, бутун сатрни '!'га алмаштириш, агар у фақат 'a' ҳарфларидан иборат бўлса.

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

Натижада ўзгарувчига куйидагилар ёзилади:

php'!'

Амалий машқлар

Задание 1

Берилган сатр:

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

Ҳарфлардан иборат биринчи қисм сатрни топадиган регуляр ифодани ёзинг.

Задание 2

Берилган сатр:

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

Ҳарфлардан иборат охирги қисм сатрни топадиган регуляр ифодани ёзинг.

Задание 3

Берилган сатр:

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

Доллар белгилари билан ўралган ҳарфлардан иборат охирги қисм сатрни топадиган регуляр ифодани ёзинг.