Ký tự đặc biệt (Special characters)
special characters là ký tự đặc biệt
để biến ký tự đặc biệt thành ký tự thường trong chuỗi ta thêm dấu gạch chéo trước nó
Danh sách ký tự đặc biệt:
[ ] { } ( ) \ ^ $ . | ? * +
.
Cách biến ký tự đặc biệt thành ký tự thường:
alert( "Chapter 5.1".match(/\d\.\d/) ); // 5.1 (match!)
alert( "Chapter 511".match(/\d\.\d/) ); // null (lỗi thì chuỗi tìm không có dấu chấm mà match có \.)
Tìm g() trong chuỗi sau:
alert( "function g()".match(/g\(\)/) ); // "g()"
Tìm chính dấu gạch chéo \
alert( "1\\2".match(/\\/) ); // '\' tìm thấy 1 dấu gạch
Tìm dấu gạch chéo khi dùng new RegExp
let regexp = new RegExp("\d\.\d");
alert( "Chapter 5.1".match(regexp) ); // null cần dùng cách khác để Escaping
Cách tìm dấu gạch chéo đúng khi dùng new RegExp
let regStr = "\\d\\.\\d";
alert(regStr); // \d\.\d (hợp ký)
let regexp = new RegExp(regStr);
alert( "Chapter 5.1".match(regexp) ); // 5.1
Kết luận: Khi chuyển một chuỗi đến new RegExp, chúng ta cần phải có dấu gạch chéo ngược kép \\