gpt4 book ai didi

java - 匹配字符串中第一个逗号之后的所有内容

转载 作者:行者123 更新时间:2023-12-01 17:34:22 25 4
gpt4 key购买 nike

我正在使用java进行正则表达式匹配。我正在使用 rubular 来验证匹配,并使用 ideone 来测试我的代码。

我从 this SO solution 得到了一个正则表达式,并且它与我想要的 rubular 中的组匹配,但我在 java 中的实现不匹配。当它打印“值”时,它打印的是 commaSeparatedString 的值,而不是 matcher.group(1) 我希望 println 捕获的组/输出为“v123_gpbpvl-testpv1,v223_gpbpvl-testpv1-iso”

String commaSeparatedString = "Vtest7,v123_gpbpvl-testpv1,v223_gpbpvl-testpv1-iso";
//match everything after first comma
String myRegex = ",(.*)";
Pattern pattern = Pattern.compile(myRegex);
Matcher matcher = pattern.matcher(commaSeparatedString);
String value = "";
if (matcher.matches())
value = matcher.group(1);
else
value = commaSeparatedString;
System.out.println(value);

(编辑:我遗漏了 commaSeparatedString 并不总是包含 2 个逗号。相反,它总是包含 0 个或多个逗号)

最佳答案

如果您不必使用正则表达式来解决它,您可以尝试以下操作:

int size = commaSeparatedString.length();
value = commaSeparatedString.substring(commaSeparatedString.indexOf(",")+1,size);

也就是说,上面的代码返回从第一个逗号索引开始的子字符串。

编辑:

抱歉,我省略了更简单的版本。感谢一位评论员的帮助,您也可以使用这一行:

value = commaSeparatedString.substring( commaSeparatedString.indexOf(",") );

关于java - 匹配字符串中第一个逗号之后的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14264198/

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