gpt4 book ai didi

java - 捕获分号分隔字符串的组缺少最后一个组

转载 作者:行者123 更新时间:2023-12-02 00:39:25 25 4
gpt4 key购买 nike

我的输入字符串是

String input=" 4313 :F:7222;scott miles:F:7639;Henry Gile:G:3721";

这是一个带有分号分隔符的字符串。它可以包含任意数量的由分号分隔的值

我想在java中使用组捕获功能并捕获以下值(即:分隔)

         4313 :F:7222
scott miles:F:7639
Henry Gile:G:3721

我知道我可以在 Spring 类下使用 split 函数,但由于某种原因我想在这里使用组捕获。

我试过了

Matcher myMatcher = Pattern.compile("(.*?);").matcher(input);
while (myMatcher.find()) {
System.out.println("group is " + myMatcher.group());
}

输出为

group is  4313 :F:7222;
group is scott miles:F:7639;

但预期输出是

group is  4313 :F:7222
group is scott miles:F:7639
group is Henry Gile:G:3721

我不知道如何捕获最后一个分号之后的最后一个值,而且我想摆脱分号,正如我在预期结果中提到的那样。

最佳答案

尝试使用正则表达式:

([^;]+)

这应该会获得您需要的所有组。

regex101 demo .

关于java - 捕获分号分隔字符串的组缺少最后一个组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18716587/

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