文字グループと数字グループを連結した "11E12C108N" のような文字列がある場合、間に区切りスペース文字を入れずにそれらを分割するにはどうすればよいですか?
たとえば、結果の分割を次のようにします。
tokens[0] = "11"
tokens[1] = "E"
tokens[2] = "12"
tokens[3] = "C"
tokens[4] = "108"
tokens[5] = "N"
私は今これを持っています。
public static void main(String[] args) {
String stringToSplit = "11E12C108N";
Pattern pattern = Pattern.compile("\\d+\\D+");
Matcher matcher = pattern.matcher(stringToSplit);
while (matcher.find()) {
System.out.println(matcher.group());
}
}
それは私に与えます:
11E
12C
108N
元の正規表現を一度に完全に分割することはできますか? 中間トークンで正規表現を再度実行する代わりに?