Hãy cùng Thế giới JS tìm hiểu một số ví dụ về Biểu thức chính quy(Regular Expressions(Regex)) trong JavaScript dưới đây. Biểu thức này khá thông dụng và hữu ích trong lập trình với javascript.
Biểu thức chính quy(Regular Expressions(Regex)) là một chuỗi các ký tự tạo thành mẫu(pattern) tìm kiếm. Mẫu(pattern) tìm kiếm có thể được sử dụng cho tìm kiếm văn bản và văn bản để thay thế các hoạt động. Một biểu thức chính quy có thể là một ký tự đơn hoặc một 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ại thao tác tìm kiếm văn bản và thay thế văn bản.
Cú pháp:
/pattern/modifiers;
Thí dụ:
var patt = /vpsus.vn/i;
Giải thích:
/vpsus.vn/i là một biểu thức chính quy.
Wikicode.dev là một mẫu(pattern) (được sử dụng trong tìm kiếm).
i là công cụ sửa đổi (sửa đổi tìm kiếm thành Không phân biệt chữ hoa chữ thường).
1. Biểu thức chính quy công cụ sửa đổi :
Công cụ sửa đổi có thể được sử dụng để thực hiện tìm kiếm nhiều dòng:
Ví dụ:
Biểu thức | Sự mô tả |
[abc] | Tìm bất kỳ ký tự nào trong ngoặc |
[0-9] | Tìm bất kỳ chữ số nào trong ngoặc từ 0 đến 9 |
(x|y) | Tìm bất kỳ phương án nào giữa x hoặc y được phân tách bằng | |
2. Biểu thức chính quy Dấu ngoặc vuông
Có thể dùng để Tìm ký tự trong một phạm vi được chỉ định
Biểu thức | Sự miêu tả |
[abc] | Tìm bất kỳ ký tự nào bên trong dấu ngoặc |
[^abc] | Tìm bất kỳ ký tự nào, không nằm trong dấu ngoặc |
[0-9] | Tìm bất kỳ chữ số nào trong ngoặc từ 0 đến 9 |
[^0-9] | Tìm bất kỳ chữ số nào không nằm trong ngoặc |
(x|y) | Tìm bất kỳ phương án nào giữa x hoặc y được phân tách bằng | |
3. Biểu thức chính quy Mẫu :
Siêu ký tự(Metacharacters) là ký tự có ý nghĩa đặc biệt:
Ví dụ:
Siêu ký tự | Sự mô tả |
\d | Dùng để tìm một chữ số |
\S | Được sử dụng để tìm một ký tự khoảng trắng |
\b | Được sử dụng để tìm từ khớp ở đầu hoặc cuối từ |
\uxxxx | Được sử dụng để tìm ký tự Unicode được chỉ định bởi số thập lục phân xxxxx |
4. Biểu thức chính quy Bộ định lượng được sử dụng để xác định số lượng xảy ra
Ví dụ:
Định lượng | Sự mô tả |
n+ | Được sử dụng để khớp với bất kỳ chuỗi nào chứa ít nhất một n |
N* | Được sử dụng để khớp với bất kỳ chuỗi nào chứa 0 hoặc nhiều lần xuất hiện của n |
N? | Được sử dụng để khớp với bất kỳ chuỗi nào chứa 0 hoặc 1 lần xuất hiện của n |
5. biểu thức chính quy Thuộc tính đối tượng:
Thuộc tính | Mô tả |
constructor | Trả về hàm đã tạo nguyên mẫu của đối tượng RegExp |
global | Chỉ định xem công cụ sửa đổi “g” có được đặt hay không |
ignorecase | Chỉ định xem công cụ sửa đổi “i” có được đặt hay không |
lastindex | Chỉ định chỉ số để bắt đầu công việc tiếp theo |
multiline | Chỉ định xem công cụ sửa đổi “m” có được đặt hay không |
source | Trả về văn bản của mẫu RegExp |
6. Biểu thức chính quy phương thức đối tượng:
Phương thức | Mô tả |
compile() | Được sử dụng để biên dịch biểu thức chính quy trong khi thực thi tập lệnh |
exec() | Được sử dụng để kiểm tra sự phù hợp trong một chuỗi |
test() | Được sử dụng để kiểm tra sự trùng khớp trong một chuỗi |
toString() | Trả về giá trị chuỗi của biểu thức chính quy |
Ví dụ:
// https://vpsus.vn/ // https://www.facebook.com/groups/893052378563701 // https://twitter.com/thegioijs function vps() { var str = "Visit vpsus.vn"; var n = str.search(/vpsus/i); console.log(n); } vps();
Đầu ra:
6
7.Sử dụng các phương thức của chuỗi:
Trong JavaScript, các biểu thức chính quy thường được sử dụng với hai phương thức chuỗi: search() và replace() .
Phương thức search() sử dụng một biểu thức để tìm kiếm một kết quả khớp và trả về vị trí của kết quả khớp.
Phương thức replace() trả về một chuỗi đã sửa đổi trong đó mẫu được thay thế.
7.1 Sử dụng search() Với Biểu thức chính quy :
Sử dụng biểu thức chính quy để thực hiện tìm kiếm “vpsus.vn” không phân biệt chữ hoa chữ thường trong một chuỗi:
Ví dụ:
// https://vpsus.vn/ // https://www.facebook.com/groups/893052378563701 // https://twitter.com/thegioijs function myFunction() { // input string var str = "Visit vpsus!"; // searching string with modifier i var n = str.search(/vpsus/i); console.log(n); // searching string without modifier i var n = str.search(/vpsus/); console.log(n); } myFunction();
Đầu ra:
6 -1
7.2 Sử dụng replace() Với Biểu thức chính quy :
Sử dụng biểu thức chính quy không phân biệt chữ hoa chữ thường để thay thế Vps bằng vpsus trong một chuỗi:
Ví dụ:
// https://vpsus.vn/ // https://www.facebook.com/groups/893052378563701 // https://twitter.com/thegioijs function myFunction() { // input string var str = "Please visit vps!"; // replacing with modifier i var txt = str.replace(/vps/i, "vpsus.vn"); console.log(txt); } myFunction();
Đầu ra:
Please visit vpsus.vn!
Trên đây là tất cả những gì về Regular Expressions(Regex) trong javascript mà bạn cần biết. Nếu bạn có bất kỳ câu hỏi liên quan tới Regular Expressions(Regex) , hãy chủ động liên hệ và inbox cho chúng tôi, để giúp đỡ bạn sớm nhất
Tiếp theo, hãy cùng Thế giới JS tìm hiểu thêm các kiến thức về Javascript trong các bài tiếp theo trong series học miễn phí Javascript từ cơ bản tới nâng cao.
Nếu bạn cảm thấy hữu ích và yêu thích Thế giới JS, hãy tham gia và theo dõi chúng tôi để nhận thêm nhiều kiến thức MIỄN PHÍ hơn nữa nhé:
Share to learn more than!