Python 使用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')

我有下面的正则表达式,它搜索文本,在匹配的子字符串前面加上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')
有几件事需要注意:

  • 不匹配的子字符串被包装在引号中
  • html链接应该出现
我相信这与Jinja正在处理的字符串有关。我对如何转义字符串中的特定字符并将其传递给Jinja进行处理没有信心

我对角色的理解错了吗?思想?先谢谢你

"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>