随便给你一个含有数字的字符串,比如:

string s="eert343dfg56756dtry66fggg89dfgf";

那我们如何把其中的数字提取出来呢?大致有以下几种方法,正则表达式,集合类,还有就是string类提供的方法。

1 string类提供的方法:

package 测试练习;

import java.util.*;

public class get_stringnum {

/**

*2016.10.25

*/

public static void main(string[] args) {

string str = "love23next234csdn3423javaeye";

str=str.trim();

string str2="";

if(str != null && !"".equals(str)){

for(int i=0;i

if(str.charat(i)>=48 && str.charat(i)<=57){

str2+=str.charat(i);

}

}

}

system.out.println(str2);

}

}

output:

232343423

这个方法有个明显的缺点,只能把数字全部提取到一起,不能分别提取。当然也可以改进,有兴趣的朋友可以试试。

2 正则表达式

import java.util.*;

import java.util.regex.matcher;

import java.util.regex.pattern;

public class get_stringnum {

/**

*2016.10.25

*/

public static void main(string[] args) {

string a="love23next234csdn3423javaeye";

string regex="[^0-9]";

pattern p = pattern.compile(regex);

matcher m = p.matcher(a);

system.out.println( m.replaceall("").trim());

}

}

output:

232343423

pattern ,matcher是java.util.regex软件包里的两个类,具体用法大家可以查阅一下api。同样也不能单个提取数字。

3 集合类库

import java.util.*;

import java.util.regex.matcher;

import java.util.regex.pattern;

public class get_stringnum {

/**

*2016.10.25

*/

public static void main(string[] args) {

string a="love23next234csdn3423javaeye";

list digitlist = new arraylist();

pattern p = pattern.compile("[^0-9]");

matcher m = p.matcher(a);

string result = m.replaceall("");

for (int i = 0; i < result.length(); i++) {

digitlist.add(result.substring(i, i+1));

}

system.out.println(digitlist);

}

}

output:

[2, 3, 2, 3, 4, 3, 4, 2, 3]

相同的思路:

import java.util.*;

import java.util.regex.matcher;

import java.util.regex.pattern;

public class get_stringnum {

/**

*2016.10.25

*/

public static void main(string[] args) {

string a="love23next234csdn3423javaeye";

list ss = new arraylist();

for(string sss:s.replaceall("[^0-9]", ",").split(",")){

if (sss.length()>0)

ss.add(sss);

}

system.out.print(ss);

}

}

output:

[2, 3, 2, 3, 4, 3, 4, 2, 3]

很明显,利用正则表达式我们就可以分别提取数字了。

另外还有一个利用查阅文档找出的答案,如下:

/**

* 从字符串文本中获得数字

*@param

text

*@return

*/

publicstatic

list

getdigit(string text) {

list

digitlist =new

arraylist();

pattern p=

pattern.compile("(\\d+)");

matcher m=

p.matcher(text);

while

(m.find()) {

string find=

m.group(1).tostring();

digitlist.add(long.valueof(find));

}return

digitlist;

}

两个用正则表达式匹配的判断方法,如下;

// 判断一个字符串是否都为数字

public boolean isdigit(string strnum) {

return strnum.matches("[0-9]{1,}");

}

// 判断一个字符串是否都为数字

public boolean isdigit(string strnum) {

pattern pattern = pattern.compile("[0-9]{1,}");

matcher matcher = pattern.matcher((charsequence) strnum);

return matcher.matches();

}

//截取数字

public string getnumbers(string content) {

pattern pattern = pattern.compile("\\d+");

matcher matcher = pattern.matcher(content);

while (matcher.find()) {

return matcher.group(0);

}

return "";

}

// 截取非数字

public string splitnotnumber(string content) {

pattern pattern = pattern.compile("\\d+");

matcher matcher = pattern.matcher(content);

while (matcher.find()) {

return matcher.group(0);

}

return "";

}

以上就是小编为大家带来的java从字符串中提取数字的简单实例全部内容了,希望大家多多支持萬仟网~

希望与广大网友互动??

点此进行留言吧!

java 字符串中提取数字_java从字符串中提取数字的简单实例相关推荐

  1. html遍历table tr,js中获取 table节点各tr及td的内容简单实例

    js中获取 table节点各tr及td的内容简单实例 2019-01-06 编程之家 https://www.jb51.cc 编程之家收集整理的这篇文章主要介绍了js中获取 table节点各tr及td ...

  2. java string 字符个数字_java从字符串中提取数字

    string类函数的补充说明: trim()方法返回调用字符串对象的一个副本,但是所有起始和结尾的空格都被删除了,例子如下:String s=" Hello World ".tri ...

  3. java 保留字符串中的数字_java从字符串中提取数字

    随便给你一个含有数字的字符串,比如: String s="eert343dfg56756dtry66fggg89dfgf"; 那我们如何把其中的数字提取出来呢?大致有以下几种方法, ...

  4. java 取字符串中的数字_java截取字符串中的数字

    随便给你一个含有数字的字符串,比如: String s="eert343dfg56756dtry66fggg89dfgf"; 那我们如何把其中的数字提取出来呢?大致有以下几种方法, ...

  5. java split 数字_java截取字符串,截串,substring和split,分割字母和数字,正则缝隙...

    需求,把"01:大汽车",分成01和大汽车 有两种做法:一是substring Java代码 1 packagetest;2 3 public classsubstringTest ...

  6. java字符转为数字_java判断字符串是否可以转为数字

    java运算中,常涉及将String 型的字符串转为int 型数字的情况. 哪些字符串可以转为数字,哪些不可以呢,不能总以Integer.parseInt() 是否抛出异常来判断. 刚好碰到了转换情况 ...

  7. java 判断是否包含中文_java判断字符串中是否包含中文并过滤中文

    java判断字符串中是否包含中文并过滤掉中文,具体内容如下 1.判断字符串中是否包含中文方法封装 /** * 判断字符串中是否包含中文 * @param str * 待校验字符串 * @return ...

  8. java 去掉字符串中的换行_java删除字符串中的空格、回车、换行符、制表符程序...

    本程序来详细的介绍关于java删除字符串中的空格.回车.换行符.制表符程序实例,有需要学习的朋友可参考参考. java换行符 那是因为默认的情况下,界面上的换行时用的"n",这是L ...

  9. java获取数字_java 获取String中的数字

    随便给你一个含有数字的字符串,比如: String s="eert343dfg56756dtry66fggg89dfgf"; 那我们如何把其中的数字提取出来呢?大致有以下几种方法, ...

  10. java 比较字符串前几位_java截取字符串前几位

    java截取字符串_IT/计算机_专业资料.java截取字符串 1根据字符串 S... java中常用的字符串的截取方法_计算机软件及应用_IT/计算机_专业资料.jsp中常见使用技术,js,jstl ...

最新文章

  1. 正面管教PHP沙龙,正面管教沙龙体会
  2. ie6 png不透明的解决方法
  3. 如何使用定时器产生两路频率可调的PWM波
  4. mysql install语句_MySQL入门学习(一)安装与基本操作
  5. php字符串操作整理,PHP学习之整理字符串
  6. 从Gauss-Newton算法到 LM算法 (详细推导及MATLAB实现、多自变量问题)
  7. 利息计算器 html,html+jQuery简单的利息计算器
  8. 专利交底书怎么写 -
  9. Ubuntu中双声卡问题
  10. “那个人样子好怪。”“我也看到了,他好像一条狗。”
  11. 走进晶圆厂,深入了解芯片制造流程
  12. 思维导向树6级节点_8种常见的思维导图类型
  13. Java消息盒子实现性能,Python高级进阶#007 pyqt5消息盒子QMessageBox
  14. 倡议书格式范文_倡议书的格式及范文
  15. 武大三行情书第一名---《螃蟹在剥我的壳》
  16. Guarded Suspension Pattern
  17. (哈希)Squares (p2002)
  18. Android安卓——Android程序生命周期
  19. 图片展示(上面一个大图下面四个小图)
  20. tar 命令打包压缩tar.gz,不包含当前文件夹路径

热门文章

  1. SM74HC595D电路级联教程
  2. 信号处理基础-matlab-wavread-audioread
  3. webgl图库研究(包括BabylonJS、Threejs、LayaboxJS、SceneJS、ThingJS等框架的特性、适用范围、支持格式、优缺点、相关网址)
  4. IBM制造业专家赵亮:汽车及制造业质量体系管理
  5. 在上海创业的日子之注册公司的详细流程
  6. windows7打不开html文件格式,mht是什么文件?Win7打不开mht格式文件的解决办法
  7. u-boot-2016.09 make工具之fixdep
  8. Lowe的SIFT(尺度不变特征变换)程序使用详细说明
  9. webrtc QOS方法四(Sender Side BWE)
  10. 华为与Emulex、Oracle合作发布数据完整性解决方案