正则表达式对我们程序员来说应该经常听到,通常用来过滤日志,查找以及替换内容。
这个系列总结Java正则的学习内容。
1. 何为正则表达式?
正则表达式(Regular expression)是用来表述一类某一类字符串集合的特性,通常被用来搜索、编辑和操作文本和数据。
正则表达式有着自己的语法格式,这样得要求我们在学习正则表达式的时候,得了解其书写语法,它这里面的语法和具体的语言语法不是同一个概念。
正则表达式其实还是很复杂的,但是一旦掌握成熟将是你的有力的工具。
下面这个网站可以给大家来了解了解正则如何进行匹配文本的:
有一点请注意,各个语言或工具支持的正则表达式在支持的特性和语法格式上存在一定的差异,不要认为正则表达式是一个通用的标准.
2. Java平台正则表达式的包支持
Java平台对正则表达式的支持是通过java.util.regex
包提供的,平常工作当中主要用到的类是: Pattern,Matcher和PatternSyntaxException.
后面的学习主要操作的是这三个类,下面简要对这几类的功能进行表述:
类名 | 功能 |
---|---|
Pattern | 这个类是用来表示编译后的正则表达式,“编译后”大家可能会问是什么意思,这个主要是Java平台为了提高正则匹配的执行效率,对给定的正则表达式进行内部解析编译。Pattern这个类没有提供公共的构造器,所以,为了得到一个Pattern对象,你得通过其public static compile 方法来获取,这个方法接受的参数就是正则表达式,后面的章节会对正则表达式的书写语法进行描述 |
Matcher | 这个类是匹配引擎,用来对待匹配的输入字符串进行匹配,和Pattern类一样,Matcher类同样没有公共的构造器,我们得通过Pattern对象的matcher 方法来获取 |
PatternSyntaxException | 这个是unchecked 异常,主要用来表名正则表达式的语法错误 |
参考
1. https://docs.oracle.com/javase/tutorial/essential/regex/intro.html