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("<br([^>]*)>" ,Pattern.CASE_INSENSITIVE); String[] results = p.split(greet); for (String result : results) { System.out.println(result); } } }
こんにちは 今日は良い天気 頑張りましょう
すべてを分割するのではなく、分割する個数を制限したいならば、splitメソッドの第2引数に分割数を指定してください。たとえば「p.split(greet, 2)」で2分割されます。
String#splitメソッド
正規表現パターンを再利用しないならば、String#splitメソッドの方が簡単に表せます。以下は、上と同じ意味のコードです。
RegexSplit.java(抜粋)
String[] results = greet.split("<br([^>]*)>");