Đảo ngược tập hợp ký tự trong regex
Sử dụng dấu mũ '^' ở đầu dấu ngoặc vuông
có thể đảo ngược mong muốn. Tức là,
nếu, ví dụ, lệnh [ab] tìm
chữ cái 'a' hoặc 'b', thì lệnh
[^ab] sẽ tìm tất cả các ký tự, ngoại trừ
'a' và 'b'.
Ví dụ
Trong ví dụ này, mẫu tìm kiếm trông như thế này:
chữ cái 'x', sau đó KHÔNG PHẢI chữ cái 'a',
không 'b' và không 'c', rồi chữ cái
'z':
let str = 'xaz xbz xcz xez';
let res = str.replace(/x[^abc]z/g, '!');
Kết quả, biến sẽ ghi lại điều sau:
'xax xbx xcx !'
Ví dụ
Trong ví dụ này, mẫu tìm kiếm trông như thế này:
chữ cái 'x', sau đó KHÔNG PHẢI chữ cái Latinh viết thường,
rồi chữ cái 'z':
let str = 'xaz xbz x1z xCz';
let res = str.replace(/x[^a-z]z/g, '!');
Kết quả, biến sẽ ghi lại điều sau:
'xaz xbz ! !'
Bài tập thực hành
Viết biểu thức chính quy tìm chuỗi
theo mẫu: chữ số '1', sau đó ký tự
không phải 'e' và không phải 'x', chữ số '2'.
Viết biểu thức chính quy tìm chuỗi
theo mẫu: chữ cái 'x', sau đó KHÔNG PHẢI
chữ số từ 2 đến 7, chữ cái 'z'.
Viết biểu thức chính quy tìm chuỗi
theo mẫu: chữ cái 'x', sau đó KHÔNG PHẢI
chữ cái Latinh viết hoa từ 1 lần trở lên,
chữ cái 'z'.
Viết biểu thức chính quy tìm chuỗi
theo mẫu: chữ cái 'x', sau đó KHÔNG PHẢI
chữ cái Latinh viết hoa hoặc viết thường và không phải chữ số
từ 1 đến 5 từ 1 lần trở lên,
chữ cái 'z'.