Java正则表达式获得字符串中数字

下面通过一个小范例来学习如何获得一个字符串中的数字

import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class test {
    public static void main(String[] args) {
        String strInput = "[email protected];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:常用正则表达式

时间: 2024-10-01 07:03:08

Java正则表达式获得字符串中数字的相关文章

java正则表达式提取字符串中的数字

http://stackoverflow.com/questions/2367381/extract-numbers-from-a-string-java Pattern p = Pattern.compile(\\d+); 使用这个会有空字符串出现 Pattern p = Pattern.compile("-?\\d+"); 这是OK,

正则表达式统计字符串中数字的个数

#coding=utf-8import stringimport restr='i have 300 yuan, you 234 234 give me 200 again, then i have 500 yuan'iList= re.findall(r"\d+",str)print "string:",strprint "total digit number:",len(iList) 原文地址:https://www.cnblogs.com/

C# 使用正则表达式去掉字符串中的数字

C# 使用正则表达式去掉字符串中的数字 // 去掉字符串中的数字public static string RemoveNumber(string key){    return System.Text.RegularExpressions.Regex.Replace(key, @"\d", "");} // 去掉字符串中的非数字public static string RemoveNotNumber(string key){    return System.Tex

java 正则表达式 验证字符串 只包含汉字英文数字

String content = “testContent”; String regex="^[a-zA-Z0-9\u4E00-\u9FA5]+$"; Pattern pattern = Pattern.compile(regex); Matcher match=pattern.matcher(content); boolean b=match.matches(); if(b) { Toast.makeText(this, "success...", Toast.L

Java正则表达式实现字符串的动态多替换

需求场景: 今天在处理SQL语句的时候,由于数据库中存的格式是VARCHAR2型的,这就需要对SQL语句中WHERE条件后边的带数字的字符串加上单引号,对于字符串的处理,首先想到的就是正则表达式,对正则表达式,虽然有一些了解,但是也谈上很熟练,百度了一番(正常网络也就那个几个无奈的搜索引擎使用啦),发现替换,基本上属于固定替换,就是把某一类符合正则标准的,全部替换为一个固定的字符串,比如说,错别字的处理啊,还是比较好用的,这个在程序中也有实现,很easy.但是,我需要的是多个,且是动态替换的,最

用C#通过正则表达式截取字符串中符合条件的子字符串

仅仅作为简单的记录,不多说直接上代码(仅测试使用): private void Test() { Regex ConnoteA = new Regex("^[a-zA-Z]\\d{8}$"); Regex ConnoteAA = new Regex("^[a-zA-Z]{2}\\d{7,10}$"); Regex ConnoteAAA = new Regex("^[a-zA-Z]{3}\\d{5,9}$"); Regex ConnoteAAAA

使用正则表达式寻找字符串中出现了几个[***]样式的字符串

使用正则表达式寻找字符串中出现了几个[***]样式的字符串 源码如下: - (NSUInteger)analyseRX:(NSString *)string withPatternString:(NSString *)patternString { // \\[[^\\]]+\\] 用以匹配字符串中所出现的 [*] 的个数 // <[^>]+> 用以匹配字符串中所出现的 <*> 的个数 if (string == nil) { return 0; } // 正则表达式 NSR

字符串中数字子串的求和

字符串中数字子串的求和 题目: 给定一个字符串str,求其中全部数字串所代表的数字之和. 要求: 1.忽略小数点字符,例如"A1.3",其中包含两个数字1和3. 2.如果紧贴数字子串的左侧出现字符'-',当连续出现次数为奇数时, 则数字视为负,连续出现的数量为偶数时,则数字视为正. 例如:"A-1BC--12",其中包含数字为-1和12. 例: str = "A1CD2E33" , 返回36 str = "A-1B--2C--D6E&q

黑马程序员-OC特有语法:分类category,给NSString增加方法计算字符串中数字的个数

1:分类的使用场景:想对一个类,扩充一些功能,而又不改变原来类的模型,也不用继承,这时OC中的特有语法:分类可以做到: 当然分类也是一个类,也需要声明和实现,声明在.h文件中,实现在.m文件中,格式如下 // 声明 @interface  类名  (分类名称) @end // 实现 @implementation 类名 (分类名称) @end 2:分类的好处,当一个类比较庞大时,不同的部分可以放到不同的分类中,也方便团队中类的开发: 3:分类使用注意: a:分类不能增加成员变量,只能对原类增加方