我想将字符串与以下内容匹配:
re.match(r'<some_match_symbols><my_match><some_other_match_symbols>', mystring)
其中 mymatch 是我希望它找到的字符串。问题是它有时可能会有所不同,并且它存储在一个变量中。是否可以将一个变量添加到正则表达式?
没有什么能阻止你简单地这样做:
re.match('<some_match_symbols>' + '<my_match>' + '<some_other_match_symbols>', mystring)
正则表达式只不过是包含一些特殊字符的字符串,特定于正则表达式语法。但它们仍然是字符串,所以你可以做任何你习惯用字符串做的事情。
r'…'
语法是顺便说一句。一种原始字符串语法,它基本上只是防止字符串内的任何转义序列被评估。所以r'\n'
将与'\\n'
包含反斜杠和n
;的字符串相同。同时'\n'
包含换行符。
import re
url = "www.dupe.com"
expression = re.compile('<p>%s</p>'%url)
result = expression.match("<p>www.dupe.com</p>BBB")
if result:
print result.start(), result.end()
该r''
符号用于常量。使用该re
库从变量编译。