正则表达式无法逃脱问号?

时间:2014-09-25 14:01:13

标签: python regex python-3.x escaping

虽然我逃脱了,但我无法匹配问号字符 我尝试使用多个反斜杠转义并使用re.escape()

我错过了什么?

代码:

import re

text = 'test?'
result = ''

result = re.match(r'\?',text)

print ("input: "+text)
print ("found: "+str(result))

输出:

input: test?
found: None

1 个答案:

答案 0 :(得分:4)

re.match仅匹配字符串开头的模式;如在文档中:

  

如果字符串的开头处的零个或多个字符与正则表达式模式匹配,则返回相应的匹配对象。

所以,要么:

>>> re.match(r'.*\?', text).group(0)
'test?

re.search

>>> re.search(r'\?', text).group(0)
'?'