JAVA正则表达式的学习
一、正则表达式的介绍
正则表达式(Regular Expression)是一种文本模式,它使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。
二 、正则表达式的作用
1.测试字符串内的模式。
例如,可以测试输入字符串,以查看字符串内是否出现电话号码模式或信用卡号码模式。这称为数据验证。
2.替换文本。
可以使用正则表达式来识别文档中的特定文本,完全删除该文本或者用其他文本替换它。
3.基于模式匹配从字符串中提取子字符串。
可以查找文档内或输入域内特定的文本。
三、JAVA的正则表达式的使用
1.java.util.regex 包的三个类:
Pattern 类:
pattern 对象是一个正则表达式的编译表示。Pattern 类没有公共构造方法。要创建一个 Pattern 对象,你必须首先调用其公共静态编译方法,它返回一个 Pattern 对象。该方法接受一个正则表达式作为它的第一个参数。
Matcher 类:
Matcher 对象是对输入字符串进行解释和匹配操作的引擎。与Pattern 类一样,Matcher 也没有公共构造方法。你需要调用 Pattern 对象的 matcher 方法来获得一个 Matcher 对象。
PatternSyntaxException:
PatternSyntaxException 是一个非强制异常类,它表示一个正则表达式模式中的语法错误。
2.正则表达式的一些基本语法
3.Matcher类的方法
A.索引方法
B.查找方法
C.替换方法
5.PatternSyntaxException 类的方法
6.正则表达式应用的例子
下面是一个对单词 “cat” 出现在输入字符串中出现次数进行计数的例子:
import java.util.regex.Matcher;
import java.util.regex.Pattern;public class RegexMatches
{private static final String REGEX = "\\bcat\\b";private static final String INPUT ="cat cat cat cattie cat";public static void main( String args[] ){Pattern p = Pattern.compile(REGEX);Matcher m = p.matcher(INPUT); // 获取 matcher 对象int count = 0;while(m.find()) {count++;System.out.println("Match number "+count);System.out.println("start(): "+m.start());System.out.println("end(): "+m.end());}}
}
运行结果如下图所示:
下面的例子说明如何从一个给定的字符串中找到数字串:
import java.util.regex.*;
public class RegexMatches {public static void main(String[] args) {// TODO Auto-generated method stubString line = "This order was placed for QT3000! OK?";String pattern = "\\d+";Pattern r= Pattern.compile(pattern);Matcher m = r.matcher(line);if(m.find()) {System.out.println(m.group());}}}
下面是运行结果:
JAVA正则表达式的学习相关推荐
- Java正则表达式的学习使用
正则表达式 @author: kayleigh package com.shujia.java.test;/*校验QQ号是否合法1.必须是5-10位的2.0不能作为QQ号的开头3.必须都是数字检查输入 ...
- JAVA -- 正则表达式高级学习技巧
什么是RE? 想必各位大大在做文件查找的时侯都有使用过万用字符"*",比如说想查找在Windows目录下所有的Word文件时,你可能就会用"*.doc"这样的方 ...
- java正则表达式课程_通过此免费课程学习正则表达式
java正则表达式课程 by Beau Carnes 通过博卡恩斯 通过此免费课程学习正则表达式 (Learn Regular Expressions with this free course) & ...
- java正则表达式 1,Java正则表达式学习(1)
Java正则表达式学习(一) 1.什么是正则表达式: 正则表达式(regular expressions) 是一种描述字符串集的方法,它是以字符串集中各种字符串的公有特征为依据的. 正则表达式可以用于 ...
- java 正则表达式学习
一. Java正则表达式 在程序开发中,难免会遇到需要匹配.查找.替换.判断字符串的情况发生,而这些情况有时又比较复杂. 因此,学习及使用正则表达式,便成了解决这一矛盾的主要手段. 正则表达式是一种可 ...
- java正则表达式学习
java正则表达式学习 一.java正则表达式 二.简单正则表达式实例 三.捕获组 四.部分正则表达式语法 一.java正则表达式 正则表达式定义了字符串的模式 正则表达式可以用来搜索.编辑或处理文本 ...
- java正则表达式(很全)个人学习总结
很抱歉各位,由于我本文章当时是粘贴,导致排版很不好,但由于又懒不想修改排版,遂提供原版的文档dock 连接下载:下载:https://wwpx.lanzouw.com/ix0zI0qsknzi 密码 ...
- java linux runtime 正则表达式_Java学习之正则表达式
Java正则表达式字符串模式. 正则表达式可以用来搜索.编辑和处理文本. 正则表达式不尽限于一种语言,但在每一种语言中又细微的差别. java.util.regex包中主要有这3个类: Pattern ...
- 《疯狂java讲义》学习(25):正则表达式
正则表达式 正则表达式是强大的字符串处理工具,可以对字符串进行查找.提取.分割.替换等操作.String类里也提供了几个特殊的方法: boolean matches(String regex):判断该 ...
最新文章
- 欠拟合和过拟合学习笔记
- 8 关于数据仓库维度数据处理的方法探究系列——父子维
- 专栏 | 基于 Jupyter 的特征工程手册:特征选择(二)
- python输出键值列表_Python 键值分组或分区数据
- day2-列表、元组、字典、字符串
- rocketmq 初探(一)
- 2. OD-爆破exe验证程序
- 帝国理工学院暑期学校 | 大数据与创新主题,郭院士领衔,全球Top10校级证书...
- 64.判断当前线程是否是主线程
- 经验:Library Cache Lock之异常分析-云和恩墨技术通讯精选
- matplotlib绘图_Python之matplotlib绘图示例
- Java中的I/O流全汇总,所有的I/O就一张图
- Android使用Glide框架加载网络图片(解决无报错图片不显示问题)
- 以太坊源码分析:共识(1)矿工
- LeetCode69. x 的平方根(二分查找)
- Qt调用jrtplib实现单播、多播和广播
- debian查询端口进程_Linux 查看端口占用情况
- ROC曲线下面积为什么越大越好 (TPR FPR)
- booster 框架学习(一)
- 黄瓜客户端java_建造者模式
热门文章
- Spring MVC 实现Excel的导入导出功能(2:Excel的导入优化和Excel的导出)
- shodan API 获取IP开放端口
- vue.js循环for(列表渲染)详解
- Kubernetes实战[1]: 基于kubernetes构建Docker集群环境实战
- Backbone学习日记[1]:感性认识
- [转]在cocos2d-x中让一个项目适配iphone、iphone retina、ipad、ipad retina四种分辨率
- 微软已经宣布自2009年4月14日起放弃对windows xp的主流支持
- 某大龄程序员用亲身经历推翻35岁红线:大厂offer拿到手软,35岁才是黄金年龄!...
- 亿级流量架构之服务器扩容思路及问题分析
- 算法在哈啰顺风车中的实践应用