java 正则表达式高级篇,介绍四种常用的处理方式:匹配、分割、替代、获取,具体内容如下

package test;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

/**

* 正则表达式

* 正则表达式 的用法主要是4种方面的使用

* 匹配,分割,替换,获取.

* 用一些简单的符号来代表代码的操作

* @author cyc

*

*/

public class Rex {

public static void main(String[] args) {

//针对字符串处理

Rex reg = new Rex();

//校验qq的reg正则表达式

//这里的w 是指的是[a-zA-Z0-9],还有一个重要的是?,*.+这三个分别

//?表示出现1次或者1次都没有,

//+表示出现1次或者n次,

//*表示出现0次或者n次,

//还有些特殊的写法X{n}恰好n次X{n,}至少n次,X{n,m}n次到m次,

String mathReg = "[1-9]\d{4,19}";

String divisionReg = "(.)\1+";

//\b 是指的边界值

String getStringReg = "\b\w{3}\b";

//字符串匹配(首位是除0 的字符串)

reg.getMatch("739295732",mathReg);

reg.getMatch("039295732",mathReg);

//字符串的替换

//去除叠词

reg.getReplace("12111123ASDASDAAADDD",divisionReg,"$1");

//字符串的分割

//切割叠词,重复的

//这里要知道一个组的概念(.)\1第二个和第一个至相同

reg.getDivision("aadddddasdasdasaaaaaassssfq",divisionReg);

//字符串的获取

//现在获取三个字符串取出

reg.getString("ming tian jiu yao fangjia le ",getStringReg);

}

/**

* 获取查询的字符串

* 将匹配的字符串取出

*/

private void getString(String str, String regx) {

//1.将正在表达式封装成对象Patten 类来实现

Pattern pattern = Pattern.compile(regx);

//2.将字符串和正则表达式相关联

Matcher matcher = pattern.matcher(str);

//3.String 对象中的matches 方法就是通过这个Matcher和pattern来实现的。

System.out.println(matcher.matches());

//查找符合规则的子串

while(matcher.find()){

//获取 字符串

System.out.println(matcher.group());

//获取的字符串的首位置和末位置

System.out.println(matcher.start()+"--"+matcher.end());

}

}

/**

* 字符串的分割

*/

private void getDivision(String str, String regx) {

String [] dataStr = str.split(regx);

for(String s:dataStr){

System.out.println("正则表达式分割++"+s);

}

}

/**

* 字符串的替换

*/

private void getReplace(String str, String regx,String replaceStr) {

String stri = str.replaceAll(regx,replaceStr) ;

System.out.println("正则表达式替换"+stri);

}

/**

* 字符串处理之匹配

* String类中的match 方法

*/

public void getMatch(String str, String regx){

System.out.println("正则表达匹配"+str.matches(regx));

}

}

以上就是Java正则表达式的全部内容,希望对大家的学习有所帮助

java regex match 替换_java正则表达式四种常用的处理方式(匹配、分割、替代、获取)...相关推荐

  1. java淡蓝色怎么表示_JAVA正则表达式4种常用功能 [转]

    JAVA正则表达式4种常用功能 正则表达式在字符串处理上有着强大的功能,sun在jdk1.4加入了对它的支持 下面简单的说下它的4种常用功能: 查询: 以下是代码片段: String str=&quo ...

  2. java 强弱软虚_Java的四种引用,强弱软虚,用到的场景

    众所周知,java中是JVM负责内存的分配和回收,这是它的优点(使用方便,程序不用再像使用c那样操心内存),但同时也是它的缺点(不够灵活).为了解决内存操作不灵活这个问题,可以采用软引用等方法. 在J ...

  3. java实现单词替换_java – 正则表达式将空格和单词替换为单词的toFirstUpper

    我试图使用正则表达式来更改以下字符串 String input = "Creation of book orders" 至 String output = "Creati ...

  4. JAVA正则表达式4种常用功能 [转]

    JAVA正则表达式4种常用功能    正则表达式在字符串处理上有着强大的功能,sun在jdk1.4加入了对它的支持  下面简单的说下它的4种常用功能: 查询: 以下是代码片段:  String str ...

  5. JAVA 正则表达式4种常用的功能

    JAVA 正则表达式4种常用的功能 正则表达式在字符串处理上有着强大的功能,sun在jdk1.4加入了对它的支持 下面简单的说下它的4种常用功能: 查询: 以下是代码片段: String str=&q ...

  6. [转载] java实现四种常用排序算法

    参考链接: 用Java排序 四种常用排序算法 ##注:从小到大排 ##冒泡排序## 特点:效率低,实现简单 思想:每一趟将待排序序列中最大元素移到最后,剩下的为新的待排序序列,重复上述步骤直到排完所有 ...

  7. php str_replice_详解PHP字符串替换str_replace()函数四种用法

    下面通过本文给大家分享PHP字符串替换str_replace()函数4种用法,具体内容如下所示: mixed str_replace ( mixed $search , mixed $replace ...

  8. java将一个整数按字节输出_在java中的整数类型有四种,分别是 byte  short int long 其中byte只有一个字节 0或1,在此不详细讲解。其他的三种类型如下:1、...

    在java中的整数类型有四种,分别是 byte  short int long 其中byte只有一个字节 0或1,在此不详细讲解. 其他的三种类型如下: 1. 基本类型:short 二进制位数:16 ...

  9. Java创建并执行线程的四种方法

    Java创建并执行线程的四种方法 java里面创建线程有四种方式: 无返回: 实现Runnable接口,重写run(); 继承Thread类,重写run(); 有返回: 实现Callable接口,重写 ...

最新文章

  1. Runnable和Thread的区别
  2. IDEA中添加tomcat服务器和创建一个新的web项目
  3. ABAP 编程语言中的系统字段(System Fields)
  4. nssl1522-简单数数题【dp】
  5. 排序算法(2)----插入排序
  6. eclipse中git的配置、提交代码、从远程导入代码
  7. 多个vue项目之间跳转_Vue六,路由,ElementUI
  8. gnuplot读取mysql数据库_Tpcc-MySQL测试并使用gnuplot生成图表
  9. 场景应用:100亿的数据你怎么排序
  10. android Pbap下载手机电话簿协议介绍
  11. xdb 服务_oracle禁用XDB服务
  12. 2016.11.03回顾 more excel交换两列
  13. 2019级软件工程应用与实践-人工智能快递柜(综述)
  14. 逍遥模拟器获取服务器信息出错,逍遥模拟器不能连上网怎么办?两招解决问题...
  15. python图像倾斜校正_霍夫变换 文本图片倾斜矫正 python实现
  16. Visual Studio 2019的下载及安装
  17. 对行人重识别(RE-ID)问题的初步了解(一)
  18. GitBook 使用
  19. Naptime POJ - 2228
  20. Android自己定义TabActivity(实现仿新浪微博底部菜单更新UI)

热门文章

  1. css如何调整红心样式_条码软件如何调整条码数据的样式
  2. unix 获取程序占用内存_如何减少Docker和Kubernetes中的JVM应用程序内存占用
  3. java vm art_Android虚拟机art流程:JavaVM 和 JNIEnv 的初始化 - 神农笔记
  4. serialport 延时计时器 修改_为了夜经济,青岛真是拼了!地铁公交延时运营,再也不怕没车了...
  5. mysql虚拟机授权错误,windows下用navicat链接虚拟机MySQL数据库的过程和问题解决
  6. php 函数漏洞,PHP绕过禁用函数漏洞的原理与利用分析
  7. 深入浅出mysql gtid_Mysql 5.7 Gtid内部学习(九) 实际案例(一)
  8. android车载娱乐系统场景,智能汽车、家庭娱乐系统、工业自动化场景中接口应用设计...
  9. TensorFlow tf.keras.layers.Lambda
  10. TensorFlow Attention