Ký hiệu dấu mũ bên trong tập hợp trong biểu thức chính quy JavaScript
Như bạn đã biết, dấu mũ bên trong [ ] tạo ra
phủ định khi được viết ở đầu dấu ngoặc.
Điều đó có nghĩa, nó là một ký tự đặc biệt bên trong
những dấu ngoặc này. Để nhận được dấu mũ như một ký tự thông thường,
cần phải hoặc là thoát nó, hoặc là di chuyển nó khỏi
vị trí đầu tiên.
Ví dụ
Trong ví dụ tiếp theo, mẫu tìm kiếm như sau:
ký tự đầu tiên - là tất cả ngoại trừ 'd',
sau đó là hai chữ cái 'x'.
let str = 'axx bxx ^xx dxx';
let res = str.replace(/[^d]xx/g, '!');
Kết quả, biến sẽ được ghi giá trị sau:
'! ! ! dxx'
Ví dụ
Và bây giờ mẫu tìm kiếm như sau: ký tự đầu tiên
- là 'd' hoặc '^', sau đó là hai
chữ cái 'x':
let str = 'axx bxx ^xx dxx';
let res = str.replace(/[d^]xx/g, '!');
Kết quả, biến sẽ được ghi giá trị sau:
'axx bxx ! !'
Ví dụ
Có thể không cần di chuyển dấu mũ khỏi vị trí đầu tiên, mà chỉ cần thoát nó bằng dấu gạch chéo ngược, và nó sẽ biểu thị chính nó:
let str = 'axx bxx ^xx dxx';
let res = str.replace(/[\^d]xx/g, '!');
Kết quả, biến sẽ được ghi giá trị sau:
'axx bxx ! !'
Bài tập thực hành
Cho chuỗi:
let str = '^xx axx ^zz bkk @ss';
Viết biểu thức chính quy, tìm các chuỗi theo mẫu: dấu mũ hoặc dấu @, sau đó là hai chữ cái Latin.
Cho chuỗi:
let str = '^xx axx ^zz bkk @ss';
Viết biểu thức chính quy, tìm các chuỗi theo mẫu: KHÔNG PHẢI dấu mũ và không phải dấu @, sau đó là hai chữ cái Latin.
Cho chuỗi:
let str = '^xx axx ^zz bkk';
Viết biểu thức chính quy, tìm các chuỗi theo mẫu: không phải dấu mũ và không phải dấu cách, sau đó là hai chữ cái Latin.