Regular Expression - 正規表現
Regular Expression(RE) - 正規表現 (せいきひょうげん)
1. Định nghĩa:
RE là một phươg pháp định nghĩa ra các mẫu(pattern) và thực hiện tìm kiếm, tính toán theo các mẫu đó.
Trong PHP bạn có thể dùng RE để tìm kiếm một đoạn text theo một mẫu. Bạn có thể sửa hoặc thay đổi kết quả trả về.
Ví dụ:
Đoạn mã sau chuyển từ [địa chỉ email dạng text] sang dạng [mailto:điạ chỉ email dạng link]
$html = preg_replace(’/[^@\s]+@([-a-z0-9]+\.)+[a-z]{2,}/i’,
‘$0‘, $text);
2. Một số ký hiệu cơ bản
- / /:Bắt đầu và kết thúc một pattern: /$pattern/
- /./: dấu . đại diện cho 1 ký tự (/.at/ sẽ trả lại là bat, cat, rat)
- /*/: dấu * đại diện cho nhiều ký tự(/*at/ sẽ trả lại là bat, thebat, sprat)
- /+/: dấu + đại diện cho nhiều ký tự(/.+at/ sẽ trả lại là brat, sprat nhưng khôn trả lại at)
- /?/: dấu ? để hỏi xem có matches hay không
- /[]/: bên trong nó biểu hiện thứ tự (/[a-z]/ từ a đến z)
- /^/: bắt đầu (/^a/ bắt đầu là chữ a)
- /$/: kết thúc (’/^[aeiou]+$/ nghĩa là chỉ lấy ra đoạn aeio)
- /|/: ký hiệu hoặc (’/(gif|jpeg)/ nghĩa là tìm ảnh có kiểu gif hoặc jpeg)
-/\w/: lấy chữ [a-zA-Z0-9_]
-/\d/: lấy số [0-9]
-/\s/: lấy whitespace
-/\b/: lấy một từ đứng ngay trước \b
-/i/: không quan tâm chữ hoa hay chữ thường, lấy tất
