Geekroid-ギークロイド(仮)|ITエンジニアの日常をささいな情報で彩るコラム

ITエンジニアの転職

splitメソッド

文字列を分割する – splitメソッド
public String[] split(CharSequence input, int limit)
input:分割対象の文字列
limit:最大分割数

Pattern#splitメソッドを利用することで、指定の文字列を正規表現にマッチした箇所で分割できます。
たとえば以下は、文字列を<br…>(「…」は「>」以外の文字列)で分割する例です。

RegexSplit.java

package com.example.mynavi.regex;

import java.util.regex.Pattern;

public class RegexSplit {
  public static void main(String[] args) {
    String greet = "こんにちは
今日は良い天気
頑張りましょう"; Pattern p = Pattern.compile("]*)>" ,Pattern.CASE_INSENSITIVE); String[] results = p.split(greet); for (String result : results) { System.out.println(result); } } }

↓

こんにちは
今日は良い天気
頑張りましょう

すべてを分割するのではなく、分割する個数を制限したいならば、splitメソッドの第2引数に分割数を指定してください。たとえば「p.split(greet, 2)」で2分割されます。

point

正規表現パターンを再利用しないならば、String#splitメソッドの方が簡単に表せます。
以下は、上と同じ意味のコードです。

String[] results = greet.split("]*)>");
note

String#splitメソッド
正規表現パターンを再利用しないならば、String#splitメソッドの方が簡単に表せます。以下は、上と同じ意味のコードです。

RegexSplit.java(抜粋)

String[] results = greet.split("]*)>");
正規表現
主な正規表現パターン
Pattern/Matcherクラス
replaceAllメソッド
splitメソッド

Geekroid-ギークロイド(仮)|ITエンジニアの日常をささいな情報で彩るコラム

ITエンジニアの転職