gpt4 book ai didi

python - python 中的字符串与正则表达式比较在 python 中失败

转载 作者:行者123 更新时间:2023-12-01 01:31:15 27 4
gpt4 key购买 nike

我正在尝试将字符串与 python 中的正则表达式进行比较,如下所示,

#!/usr/bin/env python3

import re

str1 = "Expecting property name: line \d+ column \d+ (char \d+)"
str2 = "Expecting property name: line 3 column 2 (char 44)"

print(re.search(str1,str2))

if re.search(str1,str2) :
print("Strings are same")
else :
print("Strings are different")

我总是得到以下输出

None
Strings are different

我无法理解这里出了什么问题。
有人可以建议/指出我这有什么问题吗?

最佳答案

您需要转义方括号,否则这些将被正则表达式引擎视为“分组指令”:

str1 = r"Expecting property name: line \d+ column \d+ \(char \d+\)"#                                                     ^         ^

请注意,搜索并不意味着完全匹配:它只是意味着str2 的子字符串需要匹配。因此,您可能需要添加 ^$ anchor

关于python - python 中的字符串与正则表达式比较在 python 中失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52838066/

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