我正在寻找一种方法来提取字符串的最后几个字符,无论大小如何。让我们以这些字符串为例:
"abcd: efg: 1006746"
"bhddy: nshhf36: 1006754"
"hfquv: nd: 5894254"
正如您所看到的,这些是完全随机的字符串,但它们在结尾处有7个数字。我该如何提取这7个数字?
编辑:
我刚意识到String[] string = s.split(": ");
在这里非常适用,只要我调用string[2]来获取数字和string[1]来获取中间的任何内容。
String.split()
,但值得注意的是,s.split(": ")
每次调用时都会编译一个新的java.uitl.regex.Pattern
,然后使用该模式匹配你的字符串,创建一个正则表达式Matcher
和一个ArrayList
,最后返回String[]
。这将相对较慢,并且会分配比解决此问题所需更多的内存。是否重要取决于你的应用程序的性质。我通常避免使用split()
,除非我真的需要它。(请注意,如果你在单个字符上拆分,则split()
不使用正则表达式。) - rjb1290