辞書を使用して複数の文字列置換を実行する方法
キーと値に基づいて文字列内で複数の置換を行う必要があるシナリオペアの場合は、辞書を利用するのが効果的です。 Python のソリューションは次のとおりです。
<code class="python">import re s = 'Спорт russianA' d = { 'Спорт': 'Досуг', 'russianA': 'englishA', } # Construct a regular expression pattern for all dictionary keys keys = (re.escape(k) for k in d.keys()) pattern = re.compile(r'\b(' + '|'.join(keys) + r')\b') # Replace keys with corresponding values result = pattern.sub(lambda x: d[x.group()], s) # Output: 'Досуг englishA'</code>
このアプローチでは、正規表現を使用して文字列内のキーを見つけ、それらを辞書の値で置き換えます。単語全体のみを照合するには、パターンで単語の境界 (b) を指定します。
単語全体の照合が必要ない場合は、パターンを使用します:
<code class="python">pattern = re.compile('|'.join(re.escape(k) for k in d.keys()))</code>
注: この場合、一部のキーが他のキーの部分文字列である場合の誤った置換を防ぐために、辞書キーを長さの降順に並べ替えます。
以上がPython で辞書を使用して効率的な文字列置換を実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。