gpt4 book ai didi

python - 如何使用Python3使用正则表达式括号内有空格

转载 作者:太空宇宙 更新时间:2023-11-03 16:19:17 25 4
gpt4 key购买 nike

我的代码是这样的:

import re

s = """
<contentID>1"""
reg = re.compile("(.|\n)+<contentID>1.*")
m = reg.fullmatch(s)
print(m)
reg = re.compile("[.\n]+<contentID>1.*")
m = reg.fullmatch(s)
print(m)

似乎正则表达式 [.\n] 不起作用,但 (.|\n) 起作用。为什么?在这种情况下使用括号时如何编写正则表达式?

最佳答案

而不是 [.\n]匹配换行符或文字点字符,请使用 .re.DOTALLre.S启用.也匹配换行符:

reg = re.compile(".*<contentID>1.*", re.DOTALL)
m = reg.fullmatch(s)
print(m)

请参阅Python demo

另请参阅Python re reference :

[]
       Used to indicate a set of characters. In a set:
...

  • Special characters lose their special meaning inside sets. For example, [(+*)] will match any of the literal characters (, +, *, or ).

  • 如果您不使用fullmatch但是search ,你可以使用reg = re.compile("<contentID>1")if "<contentID>1" in s .

    关于python - 如何使用Python3使用正则表达式括号内有空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38654588/

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