重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
创新互联www.cdcxhl.cn八线动态BGP香港云服务器提供商,新人活动买多久送多久,划算不套路!
创新互联公司长期为上1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为忠县企业提供专业的成都做网站、成都网站建设、成都外贸网站建设,忠县网站改版等技术服务。拥有十余年丰富建站经验和众多成功案例,为您定制开发。本篇文章给大家分享的是有关Java使用正则表达式如何实现获取字符串中的数字,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
前言
本文通过一个小范例来学习java中通过正则表达式如何获得一个字符串中的数字,下面话不多说,来看看详细的介绍吧。
示例代码如下:
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)); } } }