Ví dụ 1: Regex character class
<?php
$my_str = "Thisis!@sample*on&ly)#$";
$my_str = preg_replace('/[^a-z0-9]/i', '', $my_str);
echo "The non-alphanumeric characters removed gives the string as ";
echo $my_str;
?>
Kết quả
The non-alphanumeric characters removed gives the string as Thisissampleonly
Ví dụ 2: Regex shorthand \W
<?php
$my_str = "This!#is^&*a)(sample*+_only";
$my_str = preg_replace('/[\W]/', '', $my_str);
echo "The non-alphanumeric characters removed gives the string as ";
echo $my_str;
?>
Kết quả
The non-alphanumeric characters removed gives the string as Thisisasampleonly
Giải thích
Hàm preg_replace() thay thế khớp regex bằng chuỗi rỗng.
- Ví dụ 1:
/[^a-z0-9]/i- giữ lại chữ cái (a-z, không phân biệt hoa/thường nhờ flag i) và số (0-9). Xóa tất cả ký tự khác. - Ví dụ 2:
/[\W]/- \W khớp với bất kỳ ký tự NON-word (không phải chữ cái, số, gạch dưới). Lưu ý: gạch dưới _ được coi là word character, nên KHÔNG bị xóa. Kết quả ví dụ 2 vẫn còn "_".
Muốn xóa cả gạch dưới: dùng /[^a-z0-9]/i hoặc /[\W_]/.