[JAVA] 文字列を区切って区切り文字も含める

“aabb:ccee:dfefs:efsfds:” という文字列があって、コロン(:) でsplit(“:”) すると

[aabb,ccee,dfefs,efsfds] という配列になってしまう。

区切った文字も区切った後の文字列に含めたい場合などは (?<=:) や、 (?=:) とする。

正規表現の、 (?<=:) はコロン(:)直前の所を指し、 正規表現の、 (?=:) はコロン(:)直後の所を指す。 これを利用して区切ると、コロン(:)も含めた形で区切る事が出来る。 さらに、この二つを or(|) にすると、コロン(:) 自体も文字として配列に収める事が出来る。

これの結果は、

となる。もちろんこのコロン(:) の代わりに、正規表現も使える。 コロン(:)に続いて数字が1~3回(多い方)がある場合に区切ると行った場合は、

これの結果は、

となる。







コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください