Pythonでは、文字列を特定の条件で分割するためのいくつかの方法があります。その中でも、split()
メソッドとre.split()
関数がよく使われます。
split()メソッド
split()
メソッドは、Pythonの文字列を特定の区切り文字で分割し、リストとして返します。デフォルトでは、空白文字(スペース、タブ、改行)で分割します。
s = 'AAA BBB CCC'
l = s.split()
print(l) # ['AAA', 'BBB', 'CCC']
また、区切り文字を指定することも可能です。
s1 = 'AAA,BBB,CCC'
l1 = s1.split(',')
print(l1) # ['AAA', 'BBB', 'CCC']
s2 = 'AAA/BBB/CCC'
l2 = s2.split('/')
print(l2) # ['AAA', 'BBB', 'CCC']
re.split()関数
re.split()
関数は、正規表現を用いて文字列を分割します。これにより、複数の区切り文字やパターンに基づいて文字列を分割することが可能になります。
import re
s = 'AAA BBB CCC'
l = re.split(' ', s)
print(l) # ['AAA', 'BBB', 'CCC']
複数の区切り文字を指定する場合は、以下のようにします。
s = 'AAA/BBB_CCC'
l = re.split('[/_]', s)
print(l) # ['AAA', 'BBB', 'CCC']
また、区切り文字が連続する場合や複数の文字列を条件として区切る場合にも対応できます。
s = 'AAA - BBB - CCC'
l = re.split('[ -]+', s)
print(l) # ['AAA', 'BBB', 'CCC']
s = 'DOGandCATafterFISH'
l = re.split('and|after', s)
print(l) # ['DOG', 'CAT', 'FISH']
以上がPythonで文字列を条件に分割する基本的な方法です。これらの方法を理解し、適切に使い分けることで、Pythonでの文字列操作がより柔軟になります。