1.从JDK1.4开始支持正则表达式的开发,同时给出了一个包java.util.regex,里面有两个核心的类:
java.util.regex.pattern:正则标记编译类;
java.util.regex.matcher:正则匹配操作类;
但是很少直接用以上两个类,一般由String类完成,方法如下:
(1) public boolean matches(String regex) 匹配正则表达式
(2) public String[] slipt(String regex) 根据正则表达式拆分字符串
(4) public String[] slipt(String regex,int limit) 部分拆分
(4)public string replaceAll(String regex,String replacement) 将满足正则表达式的部分已给定字符串替换
(5) public string replaceFirst(String regex,String replacement) 替换首个;
2.正则符号
(1)表示单个字符(没出现一个只表示一位)
x: 表示只由x组成;
\: 表示转义字符“\”;
\t: 匹配tab键;
\n: 匹配换行;
(2)拜师字符的选用范围(没出现一个只表示一位)
[abc]:表示可能是a,b,c中的任意一个;
[^abc]:表示不是a,b,c中的任意一个;
[a-zA-Z]: 表示任意的一位字符,可能是大写也可能是小写;
[0-9]: 表示任意的一位数字;
(3)简化表达式(没出现一个只表示一位)
. :表示任意的一位字符;
\d: 表示任意的一位数字,相当于[0-9];
\D:表示不是一位数字,相当于[^0-9];
\s: 表示任意的一位空格;
\S: 表示不是任意的一位空格;
\w: 表示是大小写字母,数字,下滑线_中的任意一位,相当于[a-zA-Z0-9];
\W: 与上面相反;
(4)边界匹配
^:写在正则之前,表示正则开始;
$:写在正则最后,表示正则结束;
(5)数量表示,如果没有数量,每一个出现的标记只能表示一位
?:表示此正则规范只能出现0次或1次;
*: 表示此正则规范只能出现0次,1次或者多次;
+ :表示此正则规范只能出现1次或者多次;
{n}:表示此正则规范正好出现n次;
{n,}:表示此正则规范出现n次以上;
{n,m}:表示此正则规范出现n~m次;
(6)逻辑操作符
正则X正则Y:表示正则X判断后正则Y;
正则X正则Y:表示两个正则2选1;
(正则):包含多个正则,成为1组;
.