まずはじめに
前回のpython での文字列の扱い方の続きとなります。前回同様、ネットの拾い知識で python を触り始めたので、その際によく使うようなことを書いていきます。
初歩的なことだと思いますが、温かい目で見ていただけると幸いです。※間違っていたらごめんなさい
今回は主に文字列の置き換えに関することを紹介します。
正規表現に関してはまだ自信がないため、しばらくしたら追加します(´・ω・`)
環境
- ArchLinux
- python 3.8.5
一般的な文字列の置き換え
特定の文字列を全て置き換える
text = 'ゆぴだよー!'
print(text.replace('ゆぴ', 'yupix'))
# 出力結果: yupixだよー!
しかし、このままでは「ゆぴ」という単語があるたびに「yupix」に置き換えられてしまいます。
そこで使用するのが第三引数のcount
です
指定した数だけ特定の文字列を置き換える
text = 'あるところにゆぴという青年がいました。ゆぴはパソコンゲームが大好きです!そんなところにあきがやってきて、ゆぴにこう言いました[一緒にゲームを作ってみないかい?]'
print(text.replace('ゆぴ', 'yupix', 2))
# 出力結果: あるところにyupixという青年がいました。yupixはパソコンゲームが大好きです!そんなところにあきがやってきて、ゆぴにこう言いました[一緒にゲームを作ってみないかい?]
今回は 2 回指定した為、最初の方に見つかった「ゆぴ」が 2 つ「yupix」に置き換えられました。
複数の文字列を置き換える
text = 'ゆぴ&あきだよー!'
print(text.replace('ゆぴ', 'hoge').replace('あき', 'age'))
# 出力結果: hoge&ageだよー!
このように「ゆぴ」と「あき」をそれぞれ指定した単語に置き換えることに成功しました。
応用
指定した文字列を削除する
これは replace の応用で消したい文字を指定し、置き換え後の文字を空にすることで文字列を削除しています。
text = 'ゆぴだよー!'
print(text.replace('ゆぴ', ''))
# 出力結果: だよー!
このように、「ゆぴ」という単語が削除されおかしな文を作ることに成功しました(?)
最後に
最後まで読んでくださりありがとうございました。一応動作テストはしていますが、私の知識に誤りがあった際は教えていただけると幸いです。
次回は文字列の置き換えなどを紹介します。