Pythonの文字列置換方法について解説したいと思います。
一般的なreplaceメソッドから正規表現で文字列するre.subメソッドのやり方を解説します。
目次
replaceメソッド使用した置換方法
Pythonでは文字列を置換するのに最も一般的な方法は、replaceメソッドになります。
使用方法は
文字列.replace(置換対象,置換先,置換回数)
になります。
サンプルは以下のようになります。
str1='I like apple'
print(str1.replace('apple','banana'))
# I like banana
また置換する回数を指定することもできます。 以下がサンプルになります。
str1='I like apple, apple and apple'
print(str1.replace('apple','banana',2))
# I like banana, banana and apple
参考:組み込み型replace
正規表現re.subを使って置換
正規表現操作用のreライブラリを利用した文字列置換も可能です。
re.sub(正規表現, 置換先文字列, 文字列 , 置換回数)
で利用できます。
import re
str1='I like apple'
print(re.sub('apple','banana',str1))
# I like banana
もちろん置換回数を指定することもできます。
import re
str1='I like apple, apple and apple'
print(re.sub('apple','banana',str1, 2))
# I like banana, banana and apple
参考:正規表現操作re.sub
補足:translateを使った”文字”置換
文字列置換ではありませんが、文字の置換に便利なのがtranslateメソッドになります。
maketransメソッドとの合わせ技になり、覚えておくと便利です。
以下がサンプルになります。
import re
str1='I like apple'
print(str1.translate(str.maketrans({'a':'A'})))
# I like Apple
参考:組み込み型translate
参考:組み込み型maketrans