gpt4 book ai didi

匹配 'category/' 或 'categories/' 的 Python 正则表达式?

转载 作者:太空宇宙 更新时间:2023-11-04 09:01:45 26 4
gpt4 key购买 nike

我正在使用 ^category/|categories/$

为什么 ^categor[y|ies]/$ 不起作用?

最佳答案

你的正则表达式应该是,

^categor(?:y|ies)/$

使用非捕获组而不是字符类。

DEMO

字符类中的任何特殊字符都被视为文字,除了少数。 [y|ies] 匹配单个字符,无论它是 y 还是 | 还是 i 还是 es

>>> import re
>>> str = """
... category/
... categories/
... categories
... category"""
>>> m = re.findall(r'^categor(?:y|ies)/$', str, re.MULTILINE)
>>> m
['category/', 'categories/']

解释:

  • ^ 断言我们在行的开头。
  • categor 匹配字符串 categor
  • (?:y|ies) 上面的字符串categor后面必须跟yies。在正则表达式 (?:) 中称为非捕获组。它只做匹配操作不捕获。
  • / 匹配文字正斜杠 /
  • $ 行尾。

关于匹配 'category/' 或 'categories/' 的 Python 正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24648023/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com