所以我使用 re 模块来编译我的正则表达式,我的正则表达式看起来像这样:
"(^~ \w+?[ & ~ \w+?]*?$)"
所以我使用 pattern = re.compile(regex) 编译它,然后我使用 re.findall(pattern, string) 来查找给定的字符串是否匹配,如果匹配则给我组。
我匹配的字符串是“v1 V ~v2_ V ~~v3”。
我希望没有匹配,但它说它匹配正则表达式。我怀疑 \w+ 匹配空格,以便它匹配整个字符串,但我在文档中找不到正确的。我错过了什么?
这是最小的可复制示例:
import re
test_string = "v1 V ~v2_ V ~~v3"
regex = "(^~*\w+?[ & ~*\w+?]*?$)"
pattern = re.compile(regex)
for elem in re.findall(regex, test_string):
print(elem)