import java.util.Arrays;

 /*
正则表达式的作用: 1 匹配 2 切割 3 替换 * */
public class Demo1 {
public static void main(String[] args) {
isPhone("0314-16610306");
cutStr1("火 影 忍 者");
cutStr2("大家家明天天玩的的的的的开心");
replaceSame("大家家明天天玩的的的的的开心");
} //匹配固话: 区号-主机号 区号:首位为0,长度为3-4位 主机号:首位不能为0,长度7-8位
public static void isPhone(String phone){
System.out.println(phone.matches("0\\d{2,3}-[1-9]\\d{6,7}")?"合法固话 ":"非法固话");
} //切割 通过split
//需求:按照空格切割字符串 = 火 影 忍 者
public static void cutStr1(String str){
String[] splits = str.split(" +");
System.out.println("数组元素:" + Arrays.toString(splits));
}
//需求:按照叠词分割字符串=大家家明天天玩的的的的的开心
public static void cutStr2(String str){
String[] splits = str.split("(.)\\1+");
System.out.println("数组元素:" + Arrays.toString(splits));
} //替换
//字符串去重:大家家明天天玩的的的的的开心
public static void replaceSame(String str){
//把后几号替换成****
String s = "大家家明13211525558天天玩18356457889的的的的的开心";
System.out.println("被替换后的内容" + s.replaceAll("1[3478]\\d{9}+", "****")); //去重并替换
System.out.println(str.replaceAll("(.)\\1+", "$1"));
//(.)任意字字符成组,\\1捕获1次;叠词,$1得到1组, 取前面的组1次或多次
}
}

运行结果:

java正则表达式2 -- 匹配、切割、查找的更多相关文章

  1. java 正则表达式获取匹配和非获取匹配

    package test1; import java.util.regex.Matcher; import java.util.regex.Pattern; public class TestExp ...

  2. java正则表达式取出匹配字符串

    import java.util.regex.Matcher; import java.util.regex.Pattern; public class RegexMatches { public s ...

  3. php第五天-正则表达式,字符串的匹配与查找函数,数组切割

    在php中有两套正则表达式,两者功能相似,一套是由PCRE,使用"preg_"为前缀命名的函数,一套是由POSIX拓展提供的,使用以"ereg_"命名的函数 0 ...

  4. java正则表达式四种常用的处理方式是怎么样呢《匹配、分割、代替、获取》

    java 正则表达式高级篇,介绍四种常用的处理方式:匹配.分割.替代.获取,具体内容如下package test; import java.util.regex.Matcher; import jav ...

  5. Java正则表达式匹配例子

    Java正则表达式匹配例子 package com.ibm.test; import java.util.regex.Matcher; import java.util.regex.Pattern; ...

  6. Java如何在正则表达式中匹配重复单词?

    在Java编程中,如何在正则表达式中匹配重复单词? 以下示例显示了如何使用regex.Matcher类的p.matcher()方法和m.group()方法在正则表达式中搜索重复的单词. package ...

  7. 恕我直言你可能真的不会java第9篇-Stream元素的匹配与查找

    在我们对数组或者集合类进行操作的时候,经常会遇到这样的需求,比如: 是否包含某一个"匹配规则"的元素 是否所有的元素都符合某一个"匹配规则" 是否所有元素都不符 ...

  8. java 数据类型String 【正则表达式】匹配

    1,什么是正则表达式 正则表达式是用来处理字符串的,其实正则表达式是非常复杂的,专门去系统学习需要花很长的时间,我们课程主要就是把常用的基础的给大家讲解. 正则表达式可以用来干什么: (1),匹配字符 ...

  9. 【JAVA正则表达式】

    一.String类. java.lang.Object |--java.lang.String 常用方法:  String replaceAll(String regex, String replac ...

随机推荐

  1. [NOI2015]程序自动分析(并查集)

    题目描述 在实现程序自动分析的过程中,常常需要判定一些约束条件是否能被同时满足. 考虑一个约束满足问题的简化版本:假设x1,x2,x3...代表程序中出现的变量,给定n个形如xi=xj或xi≠xj的变 ...

  2. 【网络流】EK算法及其优化

    今天上午我仿佛知道了什么叫做网络流,这里推荐一篇博客,大家入门网络流的可以看一下这篇博客,保证一看就懂! 博客链接: 网络流入门 这里有一篇经过我改过的EK带注释代码(博客里也有一样的,只是加了一些注 ...

  3. ABAP术语-IAC (Internet Application Components)

    IAC (Internet Application Components) 原文:http://www.cnblogs.com/qiangsheng/archive/2008/02/20/107455 ...

  4. ABAP术语-Business Connector

    Business Connector 原文:http://www.cnblogs.com/qiangsheng/archive/2007/12/27/1016379.html XML-based st ...

  5. ABAP术语-Application Server

    Application Server 原文:http://www.cnblogs.com/qiangsheng/archive/2007/12/17/1002777.html Server that ...

  6. jsp+spring+jquery+ajax的简单例子

    初学b/s编程,花费了许多时间,进度颇慢! 不过终于完成了一个简单的例子: jsp代码 <%@ page language="java" contentType=" ...

  7. Linux入门-第三周

    1.总结vim命令行模式常见快捷方式,以及vim查找,替换的方法 vim [options] [file ..] +# 打开文件后,让光标处于第#行的行首,(默认行尾) 举例vim +10 /etc/ ...

  8. 构建ExtJS 6.x程序

    构建ExtJS 6.x程序 ExtJS也有自己的打包工具 SenchaCmd,它用来生成构建ExtJS前端组织架构,最后打包发布生产,操控着前端整个开发生命周期,SenchaCmd依赖于JDK,所以要 ...

  9. sqlite3 简单实用方法

    打开数据库:sqlite3.exe test.db 显示所有表: .tables 退出 sqlite3:.quit 还有个问题,已经打开一个数据库文件了. 不知道如何在不退出命令行的情况下,更换另一个 ...

  10. python3 练习题100例 (二十四)打印完数

    完数:一个数如果恰好等于它的因子之和,这个数就称为"完数".例如 6 = 1+2+3. 题目内容: 输入一个正整数n(n<1000),输出1到n之间的所有完数(包括n). 输 ...