Danh sách ký tự đặc biệt trong biểu thức chính quy PHP
Nếu bạn thoát một ký tự thông thường - sẽ không có gì xấu xảy ra - nó vẫn sẽ biểu thị chính nó. Ngoại lệ - các chữ số, không thể thoát chúng.
Thường có sự nghi ngờ, liệu một ký tự nhất định có phải là đặc biệt hay không. Một số người đi đến mức thoát tất cả các ký tự đáng ngờ liên tục. Tuy nhiên, đây là một thực hành không tốt (làm lộn xộn biểu thức chính quy với các dấu gạch chéo ngược).
Là các ký tự đặc biệt: $ ^ . * + ? \
/ {} [] () |
Không phải là ký tự đặc biệt: @ : , ' " ;
- _ = < > % # ~ ` & !
Cho chuỗi:
<?php
$str = 'a.a aba aea';
?>
Viết biểu thức chính quy, tìm chuỗi
'a.a', không bắt các chuỗi khác.
Cho chuỗi:
<?php
$str = '2+3 223 2223';
?>
Viết biểu thức chính quy, tìm chuỗi
'2+3', không bắt các chuỗi khác.
Cho chuỗi:
<?php
$str = '23 2+3 2++3 2+++3 345 567';
?>
Viết biểu thức chính quy, tìm các chuỗi
'2+3', '2++3', '2+++3',
không bắt các chuỗi khác (+ có thể có bất kỳ
số lượng nào).
Cho chuỗi:
<?php
$str = '23 2+3 2++3 2+++3 445 677';
?>
Viết biểu thức chính quy, tìm các chuỗi
'23', '2+3', '2++3',
'2+++3', không bắt các chuỗi khác.
Cho chuỗi:
<?php
$str = '*+ *q+ *qq+ *qqq+ *qqq qqq+';
?>
Viết biểu thức chính quy, tìm các chuỗi
'*q+', '*qq+', '*qqq+',
không bắt các chuỗi khác.
Cho chuỗi:
<?php
$str = '[abc] {abc} abc (abc) [abc]';
?>
Viết biểu thức chính quy, tìm các chuỗi
trong dấu ngoặc vuông và thay thế chúng bằng '!'.