大文字 / 小文字変換
大文字にする
"Test".upper()
# TEST
小文字にする
"Test".lower()
# test
大文字と小文字を入れ替える
"Test".swapcase()
# tEST
文字列の先頭を大文字にする
s = "go to the mattresses"
s.capitalize()
# Go to the mattresses
単語の最初を大文字にする
s = "Go to the mattresses"
s.title()
# Go To The Mattresses
文字列削除
先頭と末尾の指定文字列を削除する
str.lstrip([chars])
引数を省略もしくは、NULLの場合、文字列の先頭及び末尾部分の空白を削除した文字列を返す。
引数に文字列を指定した場合、空白の代わりにその文字列を削除する。
s = " Go to the mattresses "
"A" + s.strip() + "A"
# AGo to the mattressesA
"A" + s.strip("Go") + "A"
# A to the mattressesA
文字列先頭の指定文字列を削除する
str.lstrip([chars])
strip() の文字列の先頭だけ削除するバージョン
s = " Go to the mattresses "
"A" + s.lstrip() + "A"
# AGo to the mattresses A
文字列末尾の指定文字列を削除する
str.rstrip([chars])
strip() の文字列の末尾だけ削除するバージョン
s = " Go to the mattresses "
"A" + s.rstrip() + "A"
# A Go to the mattressesA
文字列分割
左から複数分割する
str.split(sep=None, maxsplit=-1)
文字列を sep で分割したリストを返す。
maxsplit は、分割回数を表し、-1 ならすべて分割する。
sep が None の場合、空白文字を分割文字とし、空白文字が複数連続している場合は、それをひとつの分割文字列とする。
s = "ABC, DEF, GHI\nJKL"
s.split(",")
# ['ABC', ' DEF', ' GHI\nJKL']
s.split(",", 1)
# ['ABC', ' DEF, GHI\nJKL']
s.split()
# ['ABC,', 'DEF,', 'GHI', 'JKL']
右から複数分割する
str.rsprit(sep=None, maxsplit=-1)
split() の右から分割するバージョン
左から複数分割する(正規表現)
re.split(正規表現, 文字列, maxsplit=0)
こちらの場合は、maxsplit が 0 の場合にすべて分割する。
import re
re.split(r'\W', "ABC,DEF$GHI#JKL")
# ['ABC', 'DEF', 'GHI', 'JKL']
左から2つに分割する
str.partition(sep)
文字列を左から sep で区切り、以下の内容の3要素のタプルを返す。
(区切った前方部, sep, 区切った後方部)
もし区切れなければ、以下のタプルを返す。
(文字列, 空文字列, 空文字列)
s = "ABC, DEF, GHI"
s.partition(",")
# ('ABC', ',', ' DEF, GHI')
s.partition("%")
# ('ABC, DEF, GHI', '', '')
右から2つに分割する
str.rpartition(sep)
partition() の右から区切るバージョン
改行で分割する
str.splitlines([keepends])
文字列を改行で分割し、リストを返す。
keepends に真を与えると、分割した文字列に改行を含める。
s = "ABC\nDEF\nGHI\n"
s.splitlines()
# ['ABC', 'DEF', 'GHI']
s.splitlines(True)
# ['ABC\n', 'DEF\n', 'GHI\n']
置換
文字列を置換する
str.replace(old, new[, count])
文字列中にある old を new に置換する。
count を指定した場合、その数だけ置換される。
s = "Steven Spielberg"
s.replace("Spielberg", "Seagal")
# Steven Seagal
文字列を置換する(正規表現)
re.sub(pattern, repl, string, count=0)
string 中の pattern にマッチする文字列を repl に置換する。
import re
s = "Steven Allan Spielberg"
re.sub(r"(?<= )\w.*$", "Edwin King", s)
# Steven Edwin King
文字列を置換する(正規表現2)
re.subn(pattern, repl, string, count=0)
re.sub() と同じ操作を行うが、以下のタプルを返す。
(置換後文字列, 置換した数)
変換テーブルから文字列を変換する
s = "leet speak"
s.translate(str.maketrans('aet', '437'))
# l337 sp34k
整形
左揃えにする
長さ width の左揃えした文字列を返す
str.ljust(width[, fillchar])
s = "test"
s.ljust(10) + "A"
# test A
s.ljust(10, "X") + "A"
# testXXXXXXA
右揃えにする
rjust(width[, fillchar])
中央揃えにする
center(width[, fillchar])
0件のコメント