我使用此语句 result=re.match(r"\[.+\]",sentence)
来匹配 sentence="[balabala]"
。但我总是得到 None
。为什么?我尝试了很多次,在线正则表达式测试表明它有效。
最佳答案
- 正则表达式中的那些双引号用于分隔字符串而不是正则表达式的一部分。如果您希望它们成为实际表达式的一部分,您需要添加更多,并使用反斜杠 (
r"\"\[.+\]\""
) 将它们转义。或者,将字符串括在单引号中 (r'"\[.+\]"'
)。 re.match()
仅当表达式位于字符串的开头 时才生成匹配项。由于在您的示例中,字符串的开头有一个双引号字符,而正则表达式不包含双引号,因此不会产生匹配项。请尝试使用re.search()
或re.findall()
。
关于python - 如何在 python 正则表达式中匹配双引号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32124699/