从Java中的字符串中提取数字

从Java中的字符串中提取数字

我有一个Java String对象。我只需从中提取数字。我举个例子:

"123-456-789" 我想要 "123456789"

是否有只提取数字的库函数?

谢谢你的回答。在我尝试这些之前,我需要知道是否必须安装任何额外的llibraries?


人到中年有点甜
浏览 1698回答 3
3回答

慕码人2483693

这是一个更详细的解决方案。不太优雅,但可能更快:public&nbsp;static&nbsp;String&nbsp;stripNonDigits( &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;final&nbsp;CharSequence&nbsp;input&nbsp;/*&nbsp;inspired&nbsp;by&nbsp;seh's&nbsp;comment&nbsp;*/){ &nbsp;&nbsp;&nbsp;&nbsp;final&nbsp;StringBuilder&nbsp;sb&nbsp;=&nbsp;new&nbsp;StringBuilder( &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;input.length()&nbsp;/*&nbsp;also&nbsp;inspired&nbsp;by&nbsp;seh's&nbsp;comment&nbsp;*/); &nbsp;&nbsp;&nbsp;&nbsp;for(int&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;<&nbsp;input.length();&nbsp;i++){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;final&nbsp;char&nbsp;c&nbsp;=&nbsp;input.charAt(i); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(c&nbsp;>&nbsp;47&nbsp;&&&nbsp;c&nbsp;<&nbsp;58){ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sb.append(c); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;sb.toString();}测试代码:public&nbsp;static&nbsp;void&nbsp;main(final&nbsp;String[]&nbsp;args){ &nbsp;&nbsp;&nbsp;&nbsp;final&nbsp;String&nbsp;input&nbsp;=&nbsp;"0-123-abc-456-xyz-789"; &nbsp;&nbsp;&nbsp;&nbsp;final&nbsp;String&nbsp;result&nbsp;=&nbsp;stripNonDigits(input); &nbsp;&nbsp;&nbsp;&nbsp;System.out.println(result);}输出:0123456789顺便说一句:我没有使用Character.isDigit(ch),因为它接受除0 - 9之外的许多其他字符。

慕斯王

public&nbsp;String&nbsp;extractDigits(String&nbsp;src)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;StringBuilder&nbsp;builder&nbsp;=&nbsp;new&nbsp;StringBuilder(); &nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(int&nbsp;i&nbsp;=&nbsp;0;&nbsp;i&nbsp;<&nbsp;src.length();&nbsp;i++)&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;char&nbsp;c&nbsp;=&nbsp;src.charAt(i); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(Character.isDigit(c))&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;builder.append(c); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;builder.toString();}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java