【总结】java regex 正则表达式 提取数字和去除数字,过滤数字,提取价格
2023-09-14 08:58:56 时间
@Test public void test33() { 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
需求:提取价格出来
package com.infomorrow.parser_datasource; 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()); } }
相关文章
- Java 正则表达式
- [Java基础] java的守护线程与非守护线程
- Java基本数据类型
- Java魔法堂:深入正则表达式API
- Java实现 蓝桥杯 算法提高 高精度减法(JDK方法)
- Java实现 LeetCode 443 压缩字符串
- Java实现 LeetCode 543 二叉树的直径
- Java实现第九届蓝桥杯三体攻击
- Java实现数字密码发生器
- Java实现 蓝桥杯VIP 算法训练 阶乘
- Java常用类库——Runtime
- JMS(Java消息服务)与消息队列ActiveMQ基本使用(一)
- 【总结】java regex 正则表达式 提取数字和去除数字,过滤数字,提取价格
- Atitit java文件监控 WatchService 的使用 目录 1. // 处理下级多层目录1 2. // 处理新目录1 3. Code2 常见问题对于 1.// 处理下级多层目
- paip.元数据驱动的转换-读取文件行到个list理念 uapi java php python总结
- Java 关于java.util.LinkedHashMap cannot be cast to 实体类问题答案
- 使用Java操作Elasticsearch(Elasticsearch的java api使用)
- Java开发技术之成为高级java工程师必须学习的三个技术
- JAVA语言之Java 中不同的并行实现的性能比较
- Java开发之高并发必备篇(六)——Lock和ReentrantLock(3)
- Java Instrumentation 内存马——主要是利用Instrumentation Java API来做内存注入,会用到反射机制,文中提到检测思路:注入jar包-> dump已加载class字节码->反编译成java代码-> 源码webshell检测
- Java如何重置正则表达式的模式?
- Java 正则表达式
- java 正则表达式 regex 总结
- Java Swing JProgressBar:进度条组件
- 【java】Java 继承
- Error running ‘Tomcat‘: Unable to open debugger port (127.0.0.1:2148): java.net.SocketExceptio