我想匹配一个字符串,如:
re.match(r'<some_match_symbols><my_match><some_other_match_symbols>', mystring)
其中mymatch是我希望它找到的字符串。问题在于它可能不时地不同,并且它存储在变量中。是否可以将一个变量添加到正则表达式?
答案 0 :(得分:2)
没有什么可以阻止你简单地这样做:
re.match('<some_match_symbols>' + '<my_match>' + '<some_other_match_symbols>', mystring)
正则表达式只不过是包含特定于正则表达式语法的特殊字符的字符串。但它们仍然是字符串,所以你可以做任何用来处理字符串的事情。
r'…'
语法是btw。原始字符串语法,它基本上只是防止对字符串内的任何转义序列进行求值。因此r'\n'
将与'\\n'
相同,后者包含反斜杠和n
;而'\n'
包含换行符。
答案 1 :(得分:0)
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()
答案 2 :(得分:-1)
r''
符号用于常量。使用re
库从变量进行编译。