Tanda Kurung Pengelompokan dalam Regex PHP
Dalam contoh sebelumnya, operator pengulangan hanya bertindak pada satu aksara yang berada di hadapannya. Apa yang perlu dilakukan jika kita mahu menggunakannya pada beberapa aksara?
Untuk ini, terdapat tanda kurung pengelompokan
'(' dan ')'. Ia berfungsi seperti berikut:
jika sesuatu berada dalam tanda kurung pengelompokan
dan selepas ')' terdapat operator pengulangan
- ia akan bertindak pada semua yang berada di dalam kurungan.
Dalam contoh berikut, corak carian kelihatan
seperti ini: aksara 'x', diikuti dengan rentetan 'ab'
sekali atau lebih, kemudian aksara 'x':
<?php
$str = 'xabx xababx xaabbx';
$res = preg_replace('#x(ab)+x#', '!', $str);
?>
Hasilnya, yang berikut akan direkodkan ke dalam pembolehubah:
'! ! xaabbx'
Diberikan rentetan:
<?php
$str = 'ab abab abab abababab abea';
?>
Tulis ungkapan nalar yang akan mencari rentetan
mengikut corak: rentetan 'ab' diulang
1 kali atau lebih.