tôi đang sử dụng ^danh mục/|danh mục/$
.
Tại sao ^categor[y|ies]/$
Không hoạt động?
Regex của bạn phải là,
^categor(?:y|ies)/$
Sử dụng các nhóm không bắt giữ thay vì các lớp ký tự.
THỬ NGHIỆM
Bất kỳ ký tự đặc biệt nào trong một lớp ký tự đều được coi là ký tự chữ, ngoại trừ một số ký tự. [y|ies]
Khớp với một ký tự đơn, bất kể đó là ký tự nào y
还是 |
还是 Tôi
还是 e
hoặc S
>>> nhập lại
>>> str = """
...loại/
...Thể loại/
...Thể loại
...loại"""
>>> m = re.findall(r'^categor(?:y|ies)/$', str, re.MULTILINE)
>>> tôi
['danh mục/', 'danh mục/']
解释:
^
Khẳng định rằng chúng ta đang ở đầu dòng.
phân loại
chuỗi trận đấu phân loại
.
(?:y|ies)
chuỗi trênphân loại
Phải tuân theoy
hoặcừ
. trong biểu thức chính quy (?:)
được gọi là nhóm không bắt giữ. Nó chỉ thực hiện các hoạt động khớp và không chụp.
/
Khớp dấu gạch chéo về phía trước theo nghĩa đen /
.
$
cuối dòng.
Tôi là một lập trình viên xuất sắc, rất giỏi!