首先我们要知道正则表达式由两种字符构成,一种是元字符,它包括“\ | () {} [] - ^ $ * ? . +”,除此之外都是基本字符但是元字符不能直接作为模式的一部分需要在元字符之前加上反斜杠“\”。
接下来开始具体的介绍单个的元字符:
“.”表示任意一个除了换行符之外的字符,如"d . b"表示d a b,d b b,等字符串。
“|”元字符表示a或者b,
“[]”结合起来使用可以表示某特定的字符,如“[d z y]”表示可以是d、z、y这三个字符中的任意一个。
“-”表示一段字符的范围,如“[A-Z]”表示所有的大写字母。
“$”表示模式必须出现在目标串的结尾,如“un$”表示以un结尾的字符串,可以是aun、bun等。
“^”表示除了指定类型以外的字符,如“[^a-z]”表示除了小写字母以外的任意字符。
“()”表示使用一个字模式。
“? * +”都是数量限定符,“?”表示0个或者1个,“*”表示0个或者多个,“+”表示1个或者多个,如“ad?”可匹配a、ad、add;“ad*”可匹配a、ad、add、addd等;“ad+”可匹配ad、add、addd等。
“{}”表示使用匹配的次数,“{n}”表示匹配确定的n次,n是一个非负整数,如“de{2}”可匹配dee。“{n,}”表示匹配至少n次,“{n,m}”表示至少匹配n次,最多m次。