gpt4 book ai didi

java - 在 Java 中使用正则表达式拆分字符串

转载 作者:搜寻专家 更新时间:2023-10-30 20:58:12 26 4
gpt4 key购买 nike

谁能帮我处理一些正则表达式。

我想把下面的字符串拆分成一个数字,字符串编号

“810LN15”

一个方法需要返回 810,另一个需要 LN,另一个应该返回 15。

唯一真正的解决方案是使用正则表达式,因为数字的长度会增加

我可以使用什么正则表达式来适应这个?

最佳答案

String.split 不会给您想要的结果,我猜应该是“810”、“LN”、“15”,因为它必须寻找要拆分的标记at 并会剥离该 token 。

尝试使用 PatternMatcher,使用这个正则表达式:(\d+)|([a-zA-Z]+),这将匹配任何数字和字母序列并获得不同的数字/文本组(即“AA810LN15QQ12345”将导致组“AA”、“810”、“LN”、“15”、“QQ”和“12345”) .

例子:

Pattern p = Pattern.compile("(\\d+)|([a-zA-Z]+)");
Matcher m = p.matcher("810LN15");
List<String> tokens = new LinkedList<String>();
while(m.find())
{
String token = m.group( 1 ); //group 0 is always the entire match
tokens.add(token);
}
//now iterate through 'tokens' and check whether you have a number or text

关于java - 在 Java 中使用正则表达式拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5582142/

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