gpt4 book ai didi

python - 匹配新行

转载 作者:太空宇宙 更新时间:2023-11-04 10:50:54 25 4
gpt4 key购买 nike

我有以下正则表达式:

pattern = re.compile(r"HESAID:|SHESAID:")

它工作正常。我用它来分割多个分隔符,如下所示:

result = pattern.split(content)

我想添加的是验证,以便拆分不会发生,除非 HESAID: 或 SHESAID: 被放置在新行上。这不起作用:

pattern = re.compile(r"\nHESAID:\n|\nSHESAID:\n")

请帮忙。

最佳答案

如果您详细说明它究竟是如何不起作用的,那将会很有帮助,但我猜测问题在于它与连续的 HESAID/SHESAID 行不匹配。您可以通过使用行 anchor 的开头和结尾来解决此问题,而不是实际将 \n 放入您的正则表达式中:

pattern = re.compile(r'^HESAID:$|^SHESAID:$', re.MULTILINE)

re.MULTILINE 标志是必需的,以便 ^$ 在行的开头和结尾匹配,而不仅仅是开头和结尾字符串的结尾。

我可能会如下重写正则表达式,S 之后的 ? 使其成为可选的:

pattern = re.compile(r'^S?HESAID:$', re.MULTILINE)

关于python - 匹配新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13980026/

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