我需要从给定的字符串中创建一组数字和单个字母,例如:
15D12A3C11B12A
进入
15D、12A、3C、11B、12A
并将输出单独存储在单独的变量中
任何两个给定数字之间只有一个字母表,字符串末尾除外,并且字符串始终以数字开头。字母可以是 AZ,只能是大写。
我只会使用一个Matcher
:
String str = "15D12A3C11B12A";
Matcher m = Pattern.compile("\\d+\\D").matcher(str);
while (m.find())
System.out.println(m.group());
15D 12A 3C 11B 12A
以下代码垂直打印出匹配项。您只需要调整它以获得所需的结果字符串。正则表达式的意思是:1..n 位数字后跟 AZ 中的一个字符。如果要支持小写字符,请将其调整为\\d+[a-zA-Z]
String str = "15D12A3C11B12A";
String pattern = "\\d+[A-Z]";
Pattern p = Pattern.compile(pattern);
Matcher matcher = p.matcher(str);
while (matcher.find()) {
System.out.println(matcher.group());
}