[Python]文字列の先頭の文字を置換するには?

python

どうも、ちょげ(@chogetarou)です。

文字列の先頭の文字を置換する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

文字列の先頭の文字を置換する方法は、3つあります。

replace()

1つ目は、replace()を使う方法です。

まず、文字列から replace()を呼び出します。

replace()の第1引数に文字列のインデックス「0」の文字、第2引数に置換後の文字を指定します。

そして、第3引数に「1」を指定します。

#xは置換後の文字
result = text.replace(text[0], "x", 1)

上記のreplace()は、呼び出した文字列の先頭の文字を、第2引数の文字に置換した文字列を返します。

使用例

text = "Dello,Python"

result = text.replace(text[0], "H", 1)

print(result)
出力: 
Hello,Python

スライス

2つ目は、スライスを使う方法です。

まず、「+」の左辺に置換語の文字を指定します。

そして、「+」の右辺で文字列を[1:]でスライスします。

#xは置換後の文字
new_text = "x" + text[1:]

上記の「+」は、右辺の文字列の先頭の文字を右辺の文字に置換します。

使用例

text = "Aello,Python"

result = "H" + text[1:]

print(result)
出力: 
Hello,Python

正規表現

3つ目は、正規表現を使う方法です。

まず、reをインポートします。

import re

次に、reからsub()を呼び出します。

re.sub()の第1引数に「r’^.’」を指定します。

そして、re.sub()の第2引数に置換後の文字列、第3引数に文字列を指定します。

#xは置換後の文字
result = re.sub(r'^.','x', text)

上記のre.sub()は、第3引数の文字列の先頭の文字を、第2引数の文字に置換した文字列を返します。

使用例

import re

text = "Dello,Python"

result = re.sub(r'^.','H', text)

print(result)
出力: 
Hello,Python

まとめ

文字列の先頭の文字を置換する方法は、次の3つです。

  • replace()を使う方法
    result = text.replace(text[0], "x", 1)
  • スライスを使う方法
    result = "x" + text[1:]
  • 正規表現を使う方法
    result = re.sub(r'^.','x', text)

コメント

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