java

关注公众号 jb51net

关闭
首页 > 软件编程 > java > Java正则获取字符串中数字

Java通过正则表达式获取字符串中数字的方法示例

作者:0warning

最近工作中遇到了一个需求,需要利用java获取字符串中的数字,尝试几种方法后发现利用正则表达式实现最为方法,下面这篇文章就主要介绍了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));
  }
 }
}

PS:常用正则表达式

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

您可能感兴趣的文章:
阅读全文