Biểu thức chính quy JavaScript
- Trang trước Toán tử bit JS
- Trang tiếp theo Prioritize toán tử JS
Biểu thức chính quy là chuỗi ký tự cấu thành
Mẫu tìm kiếm này có thể được sử dụng cho các hoạt động tìm kiếm văn bản và thay thế văn bản.
Gì là biểu thức chính quy?
Biểu thức chính quy là thành phần củaMẫu tìm kiếm (search pattern)chuỗi ký tự.
Khi bạn tìm kiếm dữ liệu trong văn bản, bạn có thể sử dụng mẫu tìm kiếm để mô tả nội dung bạn tìm kiếm.
Biểu thức chính quy có thể là ký tự đơn, hoặc mẫu phức tạp hơn.
Biểu thức chính quy có thể được sử dụng để thực hiện tất cả các loạiTìm kiếm văn bảnvàThay thế văn bảnhoạt động.
cú pháp
/pattern/modifiers;
Ví dụ
var patt = /codew3c/i;
Ví dụ giải thích:
/codew3c/i
là biểu thức chính quy.
codew3c
là mẫu (pattern) (sử dụng trong tìm kiếm).
Chỉnh sửa
là điều chỉnh (thay đổi tìm kiếm thành không phân biệt dấu in).
Sử dụng phương thức chuỗi
Trong JavaScript, biểu thức chính quy thường được sử dụng trong haiPhương thức chuỗi:search()
và Sử dụng phương thức replace() của chuỗi để xử lý chuỗi
.
search()
Phương thức sử dụng biểu thức để tìm kiếm khớp, sau đó trả về vị trí khớp.
Sử dụng phương thức replace() của chuỗi để xử lý chuỗi
Phương thức trả về chuỗi đã được thay thế vị trí của mẫu.
Sử dụng phương thức search() của chuỗi để xử lý chuỗi
search()
Phương thức cũng chấp nhận chuỗi như tham số tìm kiếm. Tham số chuỗi sẽ được chuyển đổi thành biểu thức chính quy:
Ví dụ
Sử dụng chuỗi để thực hiện tìm kiếm đối với "W3school":
var str = "Visit CodeW3C.com!"; var n = str.search("W3School");
Sử dụng biểu thức chính quy trong phương thức search() của chuỗi
Ví dụ
Thực hiện tìm kiếm không phân biệt dấu in của chuỗi "codew3c" trong chuỗi tìm kiếm bằng biểu thức chính quy:
var str = "Visit CodeW3C.com"; var str = "Visit CodeW3C.com";
var n = str.search(/codew3c/i);
Kết quả của n sẽ là:
6
Sử dụng phương thức replace() của chuỗi để xử lý chuỗi
replace()
Sử dụng biểu thức chính quy không phân biệt chữ hoa và chữ thường để thay thế Microsoft bằng W3school trong chuỗi: Cũng chấp nhận chuỗi làm tham số tìm kiếm:
var res = str.replace("Microsoft", "W3School");
Ví dụ
Sử dụng biểu thức chính quy trong phương thức replace() của chuỗi
Sử dụng biểu thức chính quy không phân biệt chữ hoa và chữ thường để thay thế Microsoft bằng W3school trong chuỗi: var str = "Visit Microsoft!";
var res = str.replace(/microsoft/i, "W3School");
Kết quả của res sẽ là:
Visit CodeW3C.com!
Bạn có nhận ra không?
Tham số biểu thức chính quy (thay vì tham số chuỗi) có thể được sử dụng trong các phương pháp trên.
Biểu thức chính quy có thể làm mạnh mẽ hơn việc tìm kiếm của bạn (ví dụ: không phân biệt chữ hoa và chữ thường).
Có thể sử dụng để tìm kiếm toàn cục hơn không phân biệt chữ hoa và chữ thường:Chỉnh sửa biểu thức chính quy
Có thể sử dụng để tìm kiếm toàn cục hơn không phân biệt chữ hoa và chữ thường: | Mô tả | Thử một chút |
---|---|---|
Chỉnh sửa | Thực hiện khớp không phân biệt chữ hoa và chữ thường. | Thử một chút |
g | Thực hiện khớp toàn cục (tìm kiếm tất cả các khớp thay vì dừng lại sau khi tìm thấy khớp đầu tiên). | Thử một chút |
m | Thực hiện khớp nhiều dòng. | Thử một chút |
Mẫu biểu thức chính quy
Cặp ngoặcDùng để tìm kiếm chuỗi trong một phạm vi nhất định:
Biểu thức | Mô tả | Thử một chút |
---|---|---|
[abc] | Tìm kiếm bất kỳ ký tự nào trong dấu ngoặc vuông. | Thử một chút |
[0-9] | Tìm kiếm bất kỳ số từ 0 đến 9 nào. | Thử một chút |
(x|y) | Tìm kiếm bất kỳ tùy chọn nào được phân隔 bởi |. | Thử một chút |
Ký tự đặc biệt (Metacharacter)Là ký tự có ý nghĩa đặc biệt:
Ký tự đặc biệt | Mô tả | Thử một chút |
---|---|---|
\d | Tìm kiếm số. | Thử một chút |
\s | Tìm kiếm ký tự trắng. | Thử một chút |
\b | Khớp với ranh giới từ. | Thử một chút |
\uxxxx | Tìm kiếm ký tự Unicode được quy định bởi số hex xxxx. | Thử một chút |
Định lượng Định nghĩa định lượng:
Định lượng | Mô tả | Thử một chút |
---|---|---|
n+ | Khớp với bất kỳ chuỗi nào chứa ít nhất một n. | Thử một chút |
n* | Khớp với bất kỳ chuỗi nào chứa không hoặc nhiều n. | Thử một chút |
n? | Khớp với bất kỳ chuỗi nào chứa không hoặc một n. | Thử một chút |
Sử dụng đối tượng RegExp
Trong JavaScript, đối tượng RegExp là đối tượng biểu thức chính quy với các thuộc tính và phương pháp được định trước.
Sử dụng test()
test()
Là phương pháp biểu thức chính quy.
Nó tìm kiếm chuỗi thông qua mẫu và sau đó trả về true hoặc false dựa trên kết quả.
Dưới đây là ví dụ tìm kiếm ký tự "e" trong chuỗi:
Ví dụ
var patt = /e/; patt.test("The best things in life are free!");
Do có một "e" trong chuỗi nên kết quả đầu ra của đoạn mã trên sẽ là:
true
Bạn không cần phải đặt biểu thức chính quy vào biến trước. Hai dòng trên có thể rút gọn thành một dòng:
/e/.test("The best things in life are free!");
Sử dụng exec()
exec()
Phương thức là phương thức biểu thức chính quy.
Nó tìm kiếm chuỗi theo mẫu đã chỉ định và trả về văn bản đã tìm thấy.
Nếu không tìm thấy khớp, sẽ trả về null.
Dưới đây là ví dụ tìm kiếm ký tự "e" trong chuỗi:
Ví dụ
/e/.exec("The best things in life are free!");
Do có một "e" trong chuỗi nên kết quả đầu ra của đoạn mã trên sẽ là:
e
Tài liệu tham khảo đầy đủ RegExp
Để có tài liệu tham khảo đầy đủ, hãy truy cập trang web của chúng tôi đầy đủ Tài liệu tham khảo JavaScript RegExp.
Tài liệu tham khảo này chứa mô tả và ví dụ về tất cả các thuộc tính và phương thức RegExp.
- Trang trước Toán tử bit JS
- Trang tiếp theo Prioritize toán tử JS