this
またはthat
を検索する正規表現があります。 this
が見つかった場合は、ONE
に置き換えられます。 に置き換えられた場合はthat
となります。ここでif文のPython正規表現置換
はそれがPerlで次のようになります。
m =~ s/(this)|(that)/ "ONE" x!! $1 . "TWO" x!! $2 /eg
e
はevalをオプションです。 .
は連結です。 x!!
はif文として機能します。
私はPython 3でも同じことをすることができますか?私は、私は2つの主要な障害を持っていると思います
m = re.sub(r"(this)|(that)", ("ONE" * bool(match.group(1))) + ("TWO" * bool(match.group(2))), m, flags=re.EVAL)
:私のようなものを探しています。まず、match
オブジェクトを入手する方法がわかりません。内に正規表現の置き換えがあります。第二に、私はevalがPythonによってサポートされているかどうか、あるいは最良の代替案が何であるかはわかりません。
あなたは[ドキュメント](HTTPSを確認しました。 org/3/library/re.html#re.sub)? – user2357112