Pythonのreplaceメソッドを使って文字列を置換する方法を現役エンジニアが解説【初心者向け】

初心者向けにPythonのreplaceメソッドを使って文字列を置換する方法について解説しています。replaceメソッドは指定の文字列を新しい文字列に置き換えた文字列を返却します。元の文字列には変化を加えません。正規表現を使いたい場合にはStringクラスのsubメソッドを使います。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事が4,000以上あります。現役エンジニアの方はこちらをご覧ください。

Pythonのreplaceメソッドを使って文字列を置換する方法について解説します。

そもそもPythonについてよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Pythonのreplaceメソッドを使って文字列を置換する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

replaceメソッドとは?

replaceメソッドは、文字列の一部分を、別の文字列に置き換えます。
文字列操作で頻繁に用いるメソッドです。
 

replaceメソッドの基本的な書き方

str.replce(old, new[, count])

 
の形式で用います。

元の文字列をコピーし、現れる部分文字列old全てをnewに置換して返します。
オプション引数countが与えられている場合、先頭からcount個のoldだけを置換します。
 

[PR] Pythonで挫折しない学習方法を動画で公開中

実際に書いてみよう

サンプルコード

 

s0 = 'alpha bravo charlie'
s1 = s0.replace('bravo', 'delta')
print(s0)
print(s1)

 

実行結果

alpha bravo charlie
alpha delta charlie
 

解説

文字列s0を定義しました。
s0に対し、replaceメソッドを呼びました。変更前の文字列はbravo、変更後の文字列はdeltaです。戻り値を変数s1に代入しました。

文字列s0、s1を表示しました。s0が変更されていないこと、s1が置換後の文字列となっていることを確認できました。
 

正規表現で文字列を置換する場合は、re.subを使用する

正規表現で文字列を置換するには、re.subメソッドを使います。
例えば以下コードは、文字列中の数字(\dで表現)を、大文字Xに置き換えます。

サンプルコード

r2 = re.sub(r'\d', 'X', 'ab0 cd1 ef2')
print(r2)

 

実行結果

abX cdX efX

 

監修してくれたメンター

橋本紘希

システムインテグレータ企業勤務のシステムエンジニア。

開発実績: Javaプログラムを用いた業務用Webアプリケーションや、基幹システム用バッチアプリケーションなどの設計構築試験。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間でPythonを使った人工知能(AI)や機械学習の基礎を習得できるオンラインブートキャンプPython講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。