Ký tự đặc biệt bên trong dấu ngoặc vuông trong Python
Các ký tự đặc biệt bên trong [ ] trở thành
các ký tự thông thường. Điều này có nghĩa là chúng không
cần phải được thoát bằng dấu gạch chéo ngược.
Ví dụ
Trong ví dụ này, mẫu tìm kiếm trông như
sau: giữa các chữ x là bất kỳ chữ cái nào 'a',
'b', 'c', hoặc dấu chấm:
txt = 'xax xbx xcx xdx x.x x@x'
res = re.sub('x[abc.]x', '!', txt)
print(res)
Kết quả thực thi mã:
'! ! ! xdx ! x@x'
Ví dụ
Trong ví dụ này, mẫu tìm kiếm trông như sau: giữa các chữ x là bất kỳ chữ cái thường tiếng Latinh nào hoặc dấu chấm:
txt = 'xax xbx xcx x@x'
res = re.sub('x[a-z.]x', '!', txt)
print(res)
Kết quả thực thi mã:
'! ! ! x@x'
Bài tập thực hành
Cho chuỗi:
txt = 'aba aea aca aza axa a.a a+a a*a'
Hãy viết biểu thức chính quy tìm các chuỗi
'a.a', 'a+a', 'a*a',
mà không ảnh hưởng đến các chuỗi khác.
Cho chuỗi:
txt = 'xaz x.z x3z x@z x$z xrz'
Hãy 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
dấu chấm, KHÔNG PHẢI ký hiệu @, và KHÔNG PHẢI ký hiệu $, rồi đến
chữ cái 'z'.