转载请标明出处
正则表达式(java精编教程)
一:常用的元字符及其意义
元字符 | 在正则表达式中的写法 | 意义 |
. | . | 代表任何一个字符 |
\d | \\d | 代表0-9的任何一个数 |
\D | \\D | 代表任何一个非数字字符 |
\s | \\s | 代表空格类字符,’\t’、’\n’、’\x0B’、’\f’、’\r’ |
\S | \\S | 代表非空格类字符 |
\w | \\w | 代表可用于标识符的字符(不包括美元符号) |
\W | \\W | 代表不能用于标识符的字符 |
\p{Lower} | \\p{Lower} | 小写字母[a-z] |
\p{Upper} | \\{Upper} | 大写字母[A-Z] |
\p{ASCII} | \\p{ASCII} | ASCII码 |
\p{Alpha} | \\p{Alpha} | 字母 |
\p{Digit} | \\p{Digit} | 数字字符,即[0-9] |
\p{Alnum} | \\p{Alnum} | 字母或是数字 |
\p{Punct} | \\p{Punct} | 标点符号:! ” # $ % & ‘ ( ) * + , - ./ : ;< = > ? @ [ \ ] ^ _ ` { | } ~ |
\p{Graph} | \\p{Graph} | 可视字符:\p{Alnum}\p{Punct} |
\p{Print} | \\p{Print} | 可打印字符:\p{Graph} |
\p{Blank} | \\p{Blank} | 空格或制表符[\t] |
\p{Cntrl} | \\p{Cntrl} | 控制字符:[\x00-\x1F\x7F] |
二:方括号元字符的意义
[abc] :代表a,b,c中的任何一个
[^abc] :代表除了a,b,c中的任何一个
[a-zA-Z] :代表英文字母中的任意一个
[a-d] :代表a-d中的任意一个字符
[a-d[m-p]] :代表a-d或m-f中的任何字符(并)
[a-z&&[def]] :代表d,e, f中的任何一个(交)
[a-f&&[^bc]] :代表a,d,e,f(差)
三:限定修饰符
X? X出现0次或1次
X* X出现0次或多次
X+ X出现1次或多次
X{n} X出现n次
X{n,} X至少出现n次
X{n,m} X出现n-m次
XY X后跟Y
X|Y X或Y
正则表达式的实例:
1.
String regex = “[159]ABC”;
那么 “1ABC” “5ABC” “9ABC”都是正则表达式匹配的字符
2.
String regex = “[a-zA-Z]+”;
那么匹配的是英文字母