Đảo ngược tập hợp ký tự trong regex

Bằng cách sử dụng dấu mũ '^' ở đầu dấu ngoặc vuông, bạn có thể đảo ngược điều mong muốn. Ví dụ, nếu 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ư sau: chữ cái 'x', sau đó KHÔNG PHẢI chữ cái 'a', không phải 'b' và không phải 'c', rồi đến chữ cái 'z':

pythontxt = 'xaz xbz xcz xez'
res = re.sub('x[^abc]z', '!', txt)

print(res)

Kết quả thực thi mã:

python'xax xbx xcx !'

Ví dụ

Trong ví dụ này, mẫu tìm kiếm trông như sau: chữ cái 'x', sau đó KHÔNG PHẢI chữ cái thường tiếng Latinh, rồi đến chữ cái 'z':

pythontxt = 'xaz xbz x1z xCz'
res = re.sub('x[^a-z]z', '!', txt)

print(res)

Kết quả thực thi mã:

python'xaz xbz ! !'

Bài tập thực hành

Задание 1

Viết biểu thức chính quy tìm các chuỗi theo mẫu: chữ số 1, sau đó là ký tự không phải 'e' và không phải 'x', chữ số 2.

Задание 2

Viết biểu thức chính quy tìm các chuỗi theo mẫu: chữ cái 'x', sau đó KHÔNG PHẢI chữ số từ 2 đến 7, chữ cái 'z'.

Задание 3

Viết biểu thức chính quy tìm các chuỗi theo mẫu: chữ cái 'x', sau đó KHÔNG PHẢI chữ cái hoa tiếng Latinh từ 1 lần trở lên, chữ cái 'z'.

Задание 4

Viết biểu thức chính quy tìm các chuỗi theo mẫu: chữ cái 'x', sau đó KHÔNG PHẢI chữ cái hoa hoặc thường tiếng Latinh và không phải chữ số từ 1 đến 5 từ 1 lần trở lên, chữ cái 'z'.