正则基础

转载请标明出处

正则表达式(java精编教程)

一:常用的元字符及其意义

元字符

在正则表达式中的写法

意义

.

.

代表任何一个字符

d

\d

代表0-9的任何一个数

   D

\D

代表任何一个非数字字符

   s

\s

代表空格类字符,’ ’、’ ’、’x0B’、’f’、’ ’

   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}

空格或制表符[ ]

p{Cntrl}

\p{Cntrl}

控制字符:[x00-x1Fx7F]

 

二:方括号元字符的意义

[abc]    :代表a,b,c中的任何一个

[^abc]    :代表除了a,b,c中的任何一个

[a-zA-Z]    :代表英文字母中的任意一个

[a-d]    :代表a-d中的任意一个字符

[a-d[m-p]]    :代表a-dm-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    XY

 

正则表达式的实例:

1.

String  regex = “[159]ABC”;

那么 “1ABC”  “5ABC”  “9ABC”都是正则表达式匹配的字符

2.

String regex = “[a-zA-Z]+”;

那么匹配的是英文字母   

原文地址:https://www.cnblogs.com/haibiscuit/p/10447604.html