Pythonのre.sub関数の使い方は?
re.sub関数は、一致したテキストを置換するために文字列で使用されます。基本的な構文は以下の通りです:
pattern、repl、string、count=0、flags=0を指定して、re.sub()を使用します。
patternは、正規表現パターンに一致する部分です。replは、置換する文字列です。stringは、処理する文字列です。countは、最大の置換回数です(デフォルトは0で、すべての一致部分を置換します)。flagsは、マッチングモードです。
以下は例です:
import re
string = "Today is a sunny day."
result = re.sub(r"sunny", "cloudy", string)
print(result)
今日は曇りの日です。
上記の例では、”sunny”を”cloudy”に置換するために、re.sub関数を使用しました。
re.sub関数は、replパラメータとして置換関数を使用することもでき、関数を使ってカスタムの置換ロジックを定義することができます。例えば:
import re
def double(match):
return match.group(0) * 2
string = "Hello, World!"
result = re.sub(r"\w", double, string)
print(result)
出力結果は、「ハローワールド!!」です。
上の例で、私たちは置換関数doubleを定義しました。この関数はマッチオブジェクトmatchを受け取り、置換された文字列を返します。re.sub関数では、この置換関数をreplパラメータとして渡すことで、各文字を二重にする効果を実現しています。