【初級編4】pythonで文字列を置換する様々な方法を学ぼう

Python入門

本記事では、Pythonの文字列を置換する方法を解説します。

文字列置換はPythonではよく使われるので、やり方を覚えておいた方が良いでしょう。

今回は文字列置換に関する基本を網羅しました。

文字列置換について分からないことがありましたら、ぜひ本記事を参考にしてくださいね。

Pythonで特定の文字列を置換する方法

Pythonで特定の文字列を置換する方法を解説しましょう。

3つの項目に分けて解説します。

  • 文字列を置換する
  • 2種類の文字列を置換する
  • 数を限定して文字列を置換する

これらが文字列置換の基本ですので、やり方をまず抑えておきましょう。

文字列を置換する

ますは単純に文字列を置換する方法をみていきましょう。

文字列を置換する場合は、replaceメソッドを使用します。

今回は、文字列のスペースを「-」に置換してみましょう。

○コード例

fruit = 'banana apple watermelon yuzu'
print(fruit.replace(' ', '-'))

○実行結果

replaceメソッドを使う場合、第一引数に「置換したい文字列」、第二引数に「置換後の文字列」を指定します。

上記の例では、第一引数に「 」を第二引数に「-」を指定していますね。

こうすることで、スペースを「-」に置換することができるのです。

このようにreplaceは、第二引数まで使うことが前提のメソッドです。

文字列を置換する場合は、だいたいreplaceメソッドを使うことが多いですね。

2種類の文字列を置換する

つづいて2種類の文字列を置換する場合もみていきましょう。

replaceメソッドには残念ながら、2種類をまとめて置換する機能はありません。

そこでreplaceメソッドを2回使うやり方で対処しましょう。

○コード例

fruit = 'banana&apple&watermelon%yuzu'
print(fruit.replace('&', '-').replace('%', '-'))

○実行結果

上記のコードではreplaceメソッドを使い「&」と「%」を両方とも「-」に置換しています。

このようにreplaceメソッドを2回使えば、2種類の文字列をまとめて置換可能です。

もちろん、3種類、4種類の文字列をまとめて置換することもできます。

数を限定して文字列を置換する

置換する数を限定して文字列を置換する方法もみていきましょう。

数を限定する場合、replaceメソッドの第三引数に、数値を指定します。

○コード例

fruit = 'banana apple watermelon yuzu'
print(fruit.replace(' ', '-', 2))

○実行結果

上記のコードでは「2」を指定することで、左から2回まで文字列を置換します。

そのため左から3番目の半角スペースは、置換されずそのままになっていますね。

このように数を限定する場合は、replaceメソッドの第三引数を活用しましょう。

Pythonで特定の文字列を削除する方法

続いてPythonで特定の文字列を置換ではなく削除する方法をみていきます。

以下の3つの項目に分けて解説します。

  • 文字列を削除する
  • 左端の文字列を削除する
  • 右端の文字列を削除する
  • 両端の文字列を削除する

置換も削除もやり方が似通っているので、一緒に覚えてしまうと良いでしょう。

文字列を削除する

まずは文字列を普通に削除するやり方をみていきましょう。

○コード例

fruit = 'banana&apple&watermelon&yuzu'
print(fruit.replace('&', ''))

○実行結果

文字列を削除する場合も、やはりreplaceメソッドが活躍します。

削除する場合は、上記のように第二引数に「”」と記入しましょう

こうすることで、第一引数で指定した文字列を削除することが可能です。

左端の文字列を削除する

今度は左端の文字列のみを削除する方法をみていきます。

左端の文字列のみを削除する場合も、replaceメソッドを使うことができます

しかし、今回はもっと便利な方法を紹介しましょう。

というのも、文字列の左端だけ、改行コードなどいらない物が付いていて削除したい場合は、非常に多いからです。

○コード例

fruit = '¥nbanana&apple&watermelon&yuzu'
print(fruit.lstrip("¥n"))

○実行結果

上記のコードでは、lstripメソッドというものを使っています

lstripメソッドの引数に、削除した文字列を指定します。

その文字列が左端に合った場合、文字列を削除してくれます。

左端の文字列のみの削除なら、lstripメソッドが便利です。

右端の文字列を削除する

今度は逆に、右端の文字列のみを削除する方法をみていきましょう。

○コード例

fruit = 'banana&apple&watermelon&yuzu¥n'
print(fruit.rstrip("¥n"))

○実行結果

rstripメソッドを使うことで、右端の文字列を削除できます。

使い方はlstripメソッドと全く一緒ですね。

右端を削除するならrstrip、左端を削除するならlstrip、と覚えておきましょう。

両端の文字列を削除する

最後に両端の文字列を削除する方法を解説します。

○コード例

fruit = '¥nbanana&apple&watermelon&yuzu¥n'
print(fruit.strip("¥n"))

○実行結果

両端の文字列を削除したいなら、stripメソッドを利用します。

これで両端に改行コードが削除されました。

まとめ

本記事では文字列を置換する方法と、削除する方法を解説しました。

文字列を置換する場合や削除する場合は、replaceメソッドが非常に便利です。

また、lstrip、rstrip、stripの3つのメソッドの使い方も覚えておきましょう。

文字列を端に改行コードなどが入っている場合は多く、そういったものを削除する方法を覚えておくと、開発現場でも役立ちます。

次回は、pythonで正規表現を使った文字列の抽出について解説します。

❤内容は役に立ちましたか?皆さまのご意見が励みになります☺
YesNo
無料でスキルを学んでからIT業界に転職

そろそろ本気で将来のことを考えなくちゃ……手に職をつけてIT業界に転職したいなぁ。でも、業界未経験だから、なんか敷居が高そう、と思っている方へ。

これからIT業界への転身を目指すあなたに、無料でスキルアップできて、平均で年収は90万円もアップできるんです。

Python入門
【この記事を書いた人】
谷津弘樹

某自社開発のIT企業に勤めていた元webプログラマーです。主にサーバーサイド側を担当し、phpを使った開発経験があります。現在は退職しフリーランスライターとして活動中。IT系の記事を主に執筆し生計を立てています。

タイトルとURLをコピーしました