java常用类库---正则表达式

来源:互联网 发布:大数据用什么数据库 编辑:程序博客网 时间:2024/06/16 03:58

一,本章目标

掌握正则表达式的作用

掌握正则表达式的匹配模式

掌握Pattern类和Matcher类的使用

掌握String类对正则的支持


二,具体内容

2.1


以验证字符串是否由数字组成为例:


基本思路:把字符串拆分,然后一个一个判断。但是这样比较麻烦,而且现在只是验证是否由数字组成,如果更加复杂呢?

换成正则表达式,观察效果:


这就正则表达式。


2.2 Pattern,Matcher类

这两类都是正则的核心类,定义在util.regex包中。



常用:

\d:表示数字,【0-9】

\D:表示非数字

\w:表示字母,数字,下划线【a-zA-Z0-9】

\W:【^a-zA-Z0-9】


注意:出现的次数,也就是字符串的长度(出现一次,即字符串长度要是1)

例子:规定用户注册的时候,账号密码长度。

以上的正则如果要驱动起来,则必须依靠Pattern类和Matcher类。

Pattern类主要表示一个规则的意思,Matcher主要是完成匹配的功能。


本类中没有明确的构造方法。通过Matcher方法为Matcher类实例化




Pattern类也可以完成字符串拆分功能。


还可以使用Matcher类中的字符串替换功能。

将字符串中的数字替换成_


2.3 String类对正则的支持



但是在使用正则的时候一点要特别注意

现在,假设有如下的字符串拆分程序:


如果发现一个字符串无法按照制定的字符拆分,则需要使用“\”进行转义



三,总结

使用正则可以方便地完成字符串的验证,拆分,替换等复杂的功能。一般都会使用String类。