java regex 正则表达式 提取数字和去除数字,过滤数字,提取价格

简介: java regex 正则表达式 提取数字和去除数字,过滤数字,提取价格
@Test
public void test() {
    String phoneString = "哈哈,13888889999";
    // 提取数字
    // 1
    Pattern pattern = Pattern.compile("[^0-9]");
    Matcher matcher = pattern.matcher(phoneString);
    String all = matcher.replaceAll("");
    System.out.println("phone:" + all);
    // 2
    Pattern.compile("[^0-9]").matcher(phoneString).replaceAll("");
}
@Test
public void test() {
    // 提取张三 去除数字
    String r_name3 = "张三 13599998888 000000";
    Pattern pattern = Pattern.compile("[\\d]");
    Matcher matcher = pattern.matcher(r_name3);
    System.out.println(matcher.replaceAll("").trim());
}
// 过滤除点号外的所有非数字
String abc = "价格:0.00元";
Pattern compile = Pattern.compile("\\d+\\.\\d+");
Matcher matcher = compile.matcher(abc);
matcher.find();
String string = matcher.group();//提取匹配到的结果
System.out.println(string);//0.00  
// 只要提取数字其它都不需要
String abc = "手机:1319999999";    
System.out.println(abc.replaceAll("\\D", ""));//1319999999
// 提取价格
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.junit.Test;
public class test_money {
    @Test
    public void test(){
        //0
        //0.1
        //24.13
        String moneyString="1";
        Double extract_cost = extract_cost_dot(moneyString);
        System.out.println("extract_cost:"+extract_cost);
    }
    /**
     * 提取金额,规则为只提取数字和点号,必须有点号
     * 格式可以为0.0或者,11
     * @param cost
     * @return
     */
    public Double extract_cost_dot(String cost) {
        Pattern compile = Pattern.compile("(\\d+\\.\\d+)|(\\d+)");
        Matcher matcher = compile.matcher(cost);
        matcher.find();
        return Double.valueOf(matcher.group());
    }
}


相关文章
|
21天前
|
监控 Java Python
Java 中的正则表达式
正则表达式是Java中强大的文本处理工具,支持灵活的匹配、搜索、替换和验证功能。本文介绍了正则表达式的语法基础及其在Java中的应用,包括字符串匹配、替换、分割及实际场景中的邮箱验证和电话号码提取等示例。通过这些技术,可以显著提高文本处理的效率和准确性。
72 8
|
2月前
|
移动开发 Java Windows
Java 匹配\r 和 \n 的正则表达式如何编写
【10月更文挑战第19天】Java 匹配\r 和 \n 的正则表达式如何编写
162 3
|
5月前
|
Java Perl
Java进阶之正则表达式
【7月更文挑战第17天】正则表达式(RegEx)是一种模式匹配工具,用于在字符串中执行搜索、替换等操作。它由普通字符和特殊元字符组成,后者定义匹配规则。
38 4
|
4月前
|
存储 缓存 安全
|
4月前
|
监控 Java API
|
5月前
|
数据采集 监控 Java
day21:Java零基础 - 正则表达式
【7月更文挑战第21天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
39 1
|
5月前
|
Java
如何在Java中使用正则表达式
如何在Java中使用正则表达式
|
5月前
|
存储 C++ 容器
C++一分钟之-正则表达式库(regex)
【7月更文挑战第7天】C++从C++11开始支持正则表达式,通过`<regex>`库提供功能。本文涵盖基本概念如`std::regex`、`std::smatch`,以及`regex_search`和`regex_match`的使用。常见问题包括大小写敏感性、特殊字符转义、贪婪与非贪婪匹配和捕获组。提供的代码示例展示了如何进行匹配、不区分大小写的匹配、特殊字符匹配、贪婪与非贪婪匹配和捕获组的使用。理解并练习正则表达式能提升文本处理效率。
107 0
|
5月前
|
Java
正则表达式在Java中的应用与实例
正则表达式在Java中的应用与实例