前言
本文通过一个小范例来学习java中通过正则表达式如何获得一个字符串中的数字,下面话不多说,来看看详细的介绍吧。
示例代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class test {
public static void main(String[] args) {
String strInput = "3a7s10@5d2a6s17s56;33" ;
String regEx = "[^0-9]" ; //匹配指定范围内的数字
//Pattern是一个正则表达式经编译后的表现模式
Pattern p = Pattern.compile(regEx);
// 一个Matcher对象是一个状态机器,它依据Pattern对象做为匹配模式对字符串展开匹配检查。
Matcher m = p.matcher(strInput);
//将输入的字符串中非数字部分用空格取代并存入一个字符串
String string = m.replaceAll( " " ).trim();
//以空格为分割符在讲数字存入一个字符串数组中
String[] strArr = string.split( " " );
//遍历数组转换数据类型输出
for (String s:strArr){
System.out.println(Integer.parseInt(s));
}
}
}
|
PS:常用正则表达式
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。
原文链接:http://blog.csdn.net/zskucandoit/article/details/51334955