Pythonでサブ関数を使用しようとしていますが、機能させることができません。これまでのところ私は
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**')