我想根据模式检查字符串。在控制台上工作正常:
if re.match('(?!.*example).*[a-zA-Z0-9]{1,}\s{0,}(.*)\s{0,}\/\s{0,}[a-zA-Z0-9]{1,}','rains . cat / dog'):
print 'ok'
但是当我想在我的Django代码中使用它时:
pat = "(?!.*example).*[a-zA-Z0-9]{1,}\s{0,}(.*)\s{0,}\/\s{0,}[a-zA-Z0-9]{1,}"
if re.match(pat, body):
return True
我收到此错误:
unexpected end of regular expression
按照其他答案的建议,我也尝试使用//
和////
代替/
,但无法正常工作。
所以想知道如何解决此问题吗?
答案 0 :(得分:0)
在正则表达式模式前使用 r 。 试试这个:
pat = r'(?!.*example).*[a-zA-Z0-9]{1,}\s{0,}(.*)\s{0,}\/\s{0,}[a-zA-Z0-9]{1,}'
或者您可以使用\
。
pat = "(?!.*example).*[a-zA-Z0-9]{1,}\\s{0,}(.*)\\s{0,}\\/\\s{0,}[a-zA-Z0-9]{1,}"