gpt4 book ai didi

java - 正则表达式拆分没有空格的数字和字母组

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:42:13 24 4
gpt4 key购买 nike

如果我有一个像“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

我可以让原始正则表达式一次性完成拆分吗?而不是必须在中间标记上再次运行正则表达式?

最佳答案

使用以下正则表达式,获取所有匹配项的列表。这将是您正在寻找的。

\d+|\D+

在 Java 中,我认为代码看起来像这样:

Matcher matcher = Pattern.compile("\\d+|\\D+").matcher(theString);
while (matcher.find())
{
// append matcher.group() to your list
}

关于java - 正则表达式拆分没有空格的数字和字母组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11232801/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com