Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonで複数の区切り文字を使って文字列を分割する方法

re.split()メソッドによる複数区切り文字での分割

Pythonでは、標準ライブラリのreモジュールが提供するre.split(区切り文字, 文字列)メソッドを使うことで、複数の区切り文字を指定して文字列を簡単に分割できます。このメソッドには、区切り文字を表す正規表現パターンと、分割したい文字列を渡します。

基本的な使い方

次の例では、セミコロン(;)、カンマ(,)、アスタリスク(*)、改行(\n)という4種類の区切り文字を、1つの正規表現でまとめて処理しています。

a = 'Beautiful, is; better*than\nugly'
import re
print(re.split('; |, |\*|\n', a))

実行結果

['Beautiful', 'is', 'better', 'than', 'ugly']

正規表現パターンの解説

  • ; … 「; 」(セミコロン+半角スペース)に一致
  • , … 「, 」(カンマ+半角スペース)に一致
  • \* … アスタリスク(*)に一致(正規表現で特殊な意味を持つため、バックスラッシュでエスケープが必要)
  • \n … 改行文字に一致

このように、各パターンを「|」でつなぐことで、複数の区切り文字を1つの正規表現として指定できます。その結果、元の文字列はすべての区切り文字で分割され、要素ごとのリストとして返されます。


  1. Pythonの文字列は不変(イミュータブル)!同じ文字列でもid()が変わる仕組みを解説

    Pythonにおいて、文字列(str型)は不変(イミュータブル)なオブジェクトです。つまり、一度作成された文字列は後から変更できません。また、Pythonでは同じ内容の文字列を作成して別々の変数に代入した場合、両方の変数が同じ文字列オブジェクト(同じメモリ領域)を参照するように最適化されることがあります。実際に確認してみましょう。同じ文字列は同じid()を持つケース>>> a = hi >>> b = hi >>> id(a) 43706848L >>> id(b) 43706848Lこのように、変数aと変数bはまったく同

  2. 【初心者向け】Pythonで文字列にスペースを埋め込む方法|ljust・rjustメソッドの使い方

    Pythonでは、文字列の右側にスペースや任意の文字を埋め込む(パディングする)際に、str.ljust(width[, fillchar])メソッドを使用します。第2引数のfillcharには、埋め込みに使用する文字を指定でき、省略した場合は半角スペースが適用されます。使用例:文字列の右側をパディングするprint(Mona Lisa.ljust(12)) print(Mona Lisa.ljust(12,$))出力結果Mona Lisa  Mona Lisa$$$この例では、9文字のMona Lisaが全体で12文字になるよう、末尾へスペースまたは「$」が自動的に補われています。