Python

Pythonで文字列を置換するには?正規表現は使える?

Pythonで文字列を置換するには?正規表現は使える?

JavaScriptであれば、正規表現があってもなくても「.replace()」で置換できます。
では、Pythonは?
答えは、正規表現の有無で使い分けることが必要です。
置換の方法をまとめてみました。

 

Pythonで文字列を置換するには?(正規表現なし)

文字列に対して「.replace()」を使います。
次のコードは、「JavaScript」を「Python」に置換します。

txt = 'JavaScriptを勉強中'
 
print(txt.replace('JavaScript','Python'))
# ⇒ Pythonを勉強中

「.replace()」の基本構文は次の通り。

文字列.replace(置換前の文字,置換後の文字)

詳細は公式ドキュメントをご覧ください。

 

正規表現を使って置換するには?

標準ライブラリの「re」をインポートし、「.sub()」を使います。
次のコードは、正規表現を使って丸括弧で囲われた文字列を括弧ごと削除します。

import re
 
txt = 'Pythonを勉強中(JavaScriptもやってたよ)'
 
print(re.sub('\(.*?\)','',txt))
# ⇒ Pythonを勉強中

「re.sub()」の基本構文は次の通り。

import re
re.sub(置換前の文字,置換後の文字,置換したい文字列)

詳細は公式ドキュメントをご覧ください。

 

まとめ

Pythonで文字列の置換は、「.replace()」「re.sub()」を正規表現の有無で使い分けます。
reライブラリのドキュメントを見ると、色々な関数が用意されているので、使いこなせるようになってみたいです。

-Python
-, , , , , , , ,