正则基础

转载请标明出处

正则表达式(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-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]+”;

那么匹配的是英文字母   

posted @ 2019-02-27 22:48  haibiscuit  阅读(166)  评论(0编辑  收藏  举报