Daftar Karakter Khusus dalam Regex di PHP

Jika meng-escape karakter biasa - tidak ada masalah - karakter tersebut tetap akan mewakili dirinya sendiri. Pengecualian - angka, tidak boleh di-escape.

Sering muncul keraguan, apakah suatu karakter tertentu adalah karakter khusus. Beberapa sampai pada titik meng-escape semua karakter yang mencurigakan secara berurutan. Namun, ini adalah praktik yang buruk (mengotori regex dengan backslash).

Merupakan karakter khusus: $ ^ . * + ? \ / {} [] () |

Bukan karakter khusus: @ : , ' " ; - _ = < > % # ~ ` & !

Задание 1

Diberikan string:

php<?php
  $str = 'a.a aba aea';
?>

Tuliskan regex yang akan menemukan string 'a.a', tanpa mengambil yang lainnya.

Задание 2

Diberikan string:

php<?php
  $str = '2+3 223 2223';
?>

Tuliskan regex yang akan menemukan string '2+3', tanpa mengambil yang lainnya.

Задание 3

Diberikan string:

php<?php
  $str = '23 2+3 2++3 2+++3 345 567';
?>

Tuliskan regex yang akan menemukan string '2+3', '2++3', '2+++3', tanpa mengambil yang lainnya (+ bisa berapa saja jumlahnya).

Задание 4

Diberikan string:

php<?php
  $str = '23 2+3 2++3 2+++3 445 677';
?>

Tuliskan regex yang akan menemukan string '23', '2+3', '2++3', '2+++3', tanpa mengambil yang lainnya.

Задание 5

Diberikan string:

php<?php
  $str = '*+ *q+ *qq+ *qqq+ *qqq qqq+';
?>

Tuliskan regex yang akan menemukan string '*q+', '*qq+', '*qqq+', tanpa mengambil yang lainnya.

Задание 6

Diberikan string:

php<?php
  $str = '[abc] {abc} abc (abc) [abc]';
?>

Tuliskan regex yang akan menemukan string dalam kurung siku dan menggantinya dengan '!'.