您将如何解析字符串中的值,例如下面的字符串?
12:40:11 8 5 87
数字之间的差距各不相同,第一个值是时间。以下正则表达式不分隔时间组件:
str.split("\\w.([:]).")
有什么建议么?
您将如何解析字符串中的值,例如下面的字符串?
12:40:11 8 5 87
数字之间的差距各不相同,第一个值是时间。以下正则表达式不分隔时间组件:
str.split("\\w.([:]).")
有什么建议么?
正则表达式\s+
匹配一个或多个空格,因此它将split
变成 4 个值:
"12:40:11", "8", "5", "87"
作为 Java 字符串文字,此模式是"\\s+"
.
如果你想得到所有 6 个数字,那么你也想在 上拆分:
,所以模式是\s+|:
。作为 Java 字符串文字,这是"\\s+|:"
.
Scanner
除了使用之外String.split
,您还可以使用java.util.Scanner
, 并且useDelimiter
与您使用的相同split
。优点是int nextInt()
您可以使用它来提取数字int
(如果这确实是您感兴趣的)。