如何在python中使用正则表达式将HTML子字符串追加到匹配的字符串中并将其前置?

如何在python中使用正则表达式将HTML子字符串追加到匹配的字符串中并将其前置?,python,html,regex,Python,Html,Regex,我试图在一个文本字符串中搜索以“#”(hashtags)开头的单词,并在HTML”中附加/前置字符串) 它返回: <a href="{{url_for("main.tag")}}">#\x01</a> here is some <a href="{{url_for("main.tag")}}">#\x01</a> 这里有一些 只有一个小问题:它不包括匹配的单词。需要对正则表达式执行哪些操作?您需要使用 re.sub('(^#\w*|(?<

我试图在一个文本字符串中搜索以“#”(hashtags)开头的单词,并在HTML
”中附加/前置字符串)
它返回:

<a href="{{url_for("main.tag")}}">#\x01</a> here is some <a href="{{url_for("main.tag")}}">#\x01</a>
这里有一些
只有一个小问题:它不包括匹配的单词。需要对正则表达式执行哪些操作?

您需要使用

re.sub('(^#\w*|(?<=\s)#\w*)', r'<a href="{{url_for("main.tag")}}">\1</a>', string)

re.sub(')(^#\w*|)(?谢谢!我本来把regex括在括号中,但它不起作用,所以我猜它与'r'?字节字符串有关吗?@user5796559如前所述,您可以使用(
\\1
而不是
\1
re.sub('(^\w*|)(?)?
re.sub('(^#\w*|(?<=\s)#\w*)', r'<a href="{{url_for("main.tag")}}">\1</a>', string)