我正在尝试在 python 中使用 sub 函数,但无法使其正常工作。到目前为止我有
content = '**hello**'
content = re.sub('**(.*)**', '<i>(.*)</i>', content)
我正在努力使
**hello**
被替换为
<i>hello</i>
有任何想法吗?
您需要转义*
字符,并使用替换功能:
content = '**hello**'
content = re.sub('\*\*(.*)\*\*', lambda p : '<i>%s</i>' % p.group(1), content)
作为替代方案,您可以使用命名组。
content = re.sub('\*\*(?P<name>.*)\*\*', '<i>\g<name></i>', '**hello**')
或者作为更好的选择,编号组。
content = re.sub('\*\*(.*)\*\*', '<i>\\1</i>', '**hello**')