gpt4 book ai didi

python - 如何匹配原始字符串中的换行符?

转载 作者:IT老高 更新时间:2023-10-28 22:18:53 25 4
gpt4 key购买 nike

我对 Python 原始字符串有点困惑。我知道如果我们使用原始字符串,那么它会将 '\' 视为普通的反斜杠(例如 r'\n' 将是 \n)。但是,我想知道如果我想匹配原始字符串中的换行符怎么办。我试过 r'\\n',但没用。

有人对此有什么好主意吗?

最佳答案

在正则表达式中,您需要指定您处于多行模式:

>>> import re
>>> s = """cat
... dog"""
>>>
>>> re.match(r'cat\ndog',s,re.M)
<_sre.SRE_Match object at 0xcb7c8>

请注意,re\n(原始字符串)转换为换行符。正如您在评论中指出的那样,您实际上并不需要 re.M让它匹配,但它确实有助于更直观地匹配 $^:

>> re.match(r'^cat\ndog',s).group(0)
'cat\ndog'
>>> re.match(r'^cat$\ndog',s).group(0) #doesn't match
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'NoneType' object has no attribute 'group'
>>> re.match(r'^cat$\ndog',s,re.M).group(0) #matches.
'cat\ndog'

关于python - 如何匹配原始字符串中的换行符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14689531/

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