[今さら始める Python マスター #6] 文字列処理と正規表現
Pythonの文字列操作と正規表現の基本を説明します。検索、置換、分割、メールアドレス検証などの実用例を扱います。
[今さら始める Python マスター #6] 文字列処理と正規表現
文字列処理は実務でよく使う
Pythonでは、ログ、CSV、メール、Webページ、APIレスポンスなど、文字列を扱う場面がたくさんあります。文字列処理に慣れると、自動化やデータ整理がかなり楽になります。
基本的な文字列操作
文字列の長さは len() で確認できます。
1
2
text = "Python"
print(len(text))
大文字・小文字の変換もよく使います。
1
2
3
4
message = "Hello Python"
print(message.lower())
print(message.upper())
前後の空白を削除するには strip() を使います。
1
2
name = " Sato "
print(name.strip())
分割と結合
文字列を区切り文字で分けるには split() を使います。
1
2
3
csv_line = "apple,banana,orange"
items = csv_line.split(",")
print(items)
リストを文字列に戻すには join() を使います。
1
print(" / ".join(items))
置換
文字列の一部を置き換えるには replace() を使います。
1
2
text = "I like Java."
print(text.replace("Java", "Python"))
単純な置換なら replace() で十分です。複雑な条件で探したいときに正規表現を使います。
正規表現とは?
正規表現は、文字列のパターンを表すための書き方です。Pythonでは re モジュールを使います。
1
2
3
4
5
6
7
import re
email = "[email protected]"
pattern = r"^[\w\.-]+@[\w\.-]+\.\w+$"
if re.match(pattern, email):
print("valid")
最初は記号が多くて難しく見えますが、「特定の形に合う文字列を探す道具」と考えると分かりやすいです。
よく使う正規表現の用途
- メールアドレスの形式チェック
- 電話番号の抽出
- ログからエラー行を探す
- 余分な空白の整理
- 特定パターンの置換
学習のポイント
正規表現は強力ですが、何でも正規表現で解決する必要はありません。まずは split()、strip()、replace() などの基本操作を使い、それで足りないときに re を使うのがおすすめです。
この投稿は投稿者によって CC BY 4.0 の下でライセンスされています。
