Python 使用Jinja进行HTML转义时出错
我有下面的正则表达式,它搜索文本,在匹配的子字符串前面加上HTML“a”标记。它成功地完成了我想要的一切,除了使用Jinja的“安全”过滤器转义HTML之外。正则表达式如下:Python 使用Jinja进行HTML转义时出错,python,html,regex,jinja2,Python,Html,Regex,Jinja2,我有下面的正则表达式,它搜索文本,在匹配的子字符串前面加上HTML“a”标记。它成功地完成了我想要的一切,除了使用Jinja的“安全”过滤器转义HTML之外。正则表达式如下: re.sub('(^#\w*|(?<=\s)#\w*)', r'<a href="{{ url_for(\'main.tag\', tagname=tag) }}">\1</a>', 'here is some #text with a #hashtag')
re.sub('(^#\w*|(?<=\s)#\w*)',
r'<a href="{{ url_for(\'main.tag\', tagname=tag) }}">\1</a>',
'here is some #text with a #hashtag')
有几件事需要注意:
- 不匹配的子字符串被包装在引号中
- html链接应该出现
"here is some "<a href="{{ url_for(\'main.tag\', tagname=tag) }}">#text</a>" with a "<a href="{{ url_for(\'main.tag\', tagname=tag) }}">#hashtag</a>