我想在regex
中使用variable
,如何在Python
中执行此操作
TEXTO = sys.argv[1]
if re.search(r"\b(?=\w)TEXTO\b(?!\w)", subject, re.IGNORECASE):
# Successful match
else:
# Match attempt failed
发布于 2011-08-04 02:05:54
您必须将正则表达式构建为字符串:
TEXTO = sys.argv[1]
my_regex = r"\b(?=\w)" + re.escape(TEXTO) + r"\b(?!\w)"
if re.search(my_regex, subject, re.IGNORECASE):
etc.
注意re.escape
的用法,这样如果您的文本包含特殊字符,它们就不会被解释为特殊字符。
发布于 2011-08-04 02:04:36
if re.search(r"\b(?<=\w)%s\b(?!\w)" % TEXTO, subject, re.IGNORECASE):
这将把TEXTO中的内容作为字符串插入到regex中。
发布于 2011-08-04 02:04:32
rx = r'\b(?<=\w){0}\b(?!\w)'.format(TEXTO)
https://stackoverflow.com/questions/6930982
复制相似问题