gpt4 book ai didi

java - 可选择使用 String.split(),在分隔符的最后一次出现处拆分字符串

转载 作者:搜寻专家 更新时间:2023-10-31 19:34:31 25 4
gpt4 key购买 nike

我有一个匹配这个正则表达式的字符串:^.+:[0-9]+(\.[0-9]+)*/[0-9]+$ which可以很容易地可视化为 (Text):(Double)/(Int)。我需要将这个字符串分成三个部分。通常这很容易,除了 (Text) 可能包含冒号,所以我不能拆分任何冒号 - 而是 last 冒号。

.* 是贪婪的,所以它已经做得非常巧妙了,但这不能作为 String.split() 的正则表达式,因为它会吃掉我的 ( Text) 作为分隔符的一部分。理想情况下,我想要一些可以返回具有三个字符串的 String[] 的东西。我 100% 同意不为此使用 String.split()。

最佳答案

我不喜欢正则表达式(开玩笑的,但我不是很擅长)。

String s = "asdf:1.0/1"
String text = s.substring(0,s.lastIndexOf(":"));
String doub = s.substring(s.lastIndexOf(":")+1,text.indexOf("/"));
String inte = s.substring(text.indexOf("/")+1,s.length());

关于java - 可选择使用 String.split(),在分隔符的最后一次出现处拆分字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10940371/

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