1、首先介绍下正则的基础:有些字符在正则表达式中有特殊的意义。例如^就表示必须匹配开头的字符(准确的说就是,把表达式定位在你要匹配的字符串开头)。与此相对的$也就是美元符号代表着必须匹配字符串结尾(即,将正则表达式放到字符串尾部进行匹配)。另外还有.点,这个句点用来匹配任意单个字符。总结:^代表开头匹配,$代表末尾匹配,.用来匹配任一单个字符。看下图
2、字符类:可以通过在中括号[ ]中包含可接受的字符集,建立一个自己的字符类/c[aeiou]t/,这就表示正则表达式引擎在c之后是元音字母,然后再看是t,则表明匹配成功。/c[^aeiou]t/,这就表示正则引擎在查找到c之后,继续看c之后不是aeiou中的一个,比如是b这个非元音字母,然后再看是不是t,如果是t则表明匹配成功。这里的^表示取非aeiou之一的意思。连字符-表示定义一个字符的范围。/[0-9]%//[a-zA-Z]t/当你在[]内制定了里面的字符是字符类的时候,一些^$.便失去了他们的意义,例如[$.^]会任意匹配任意一个$.^其中一个。
3、选择性:这里使用|来表示选择性。/cat|dog/ 这会匹配有cat或者dog的行/^cat|dog$/ 这会匹配开头是cat或者结尾是dog的行如果相匹配只有cat或者dog这三个字母的行,可以这样写/^(cat|dog)$/
4、重复序列:当匹配重复的字符时,可以把两次放在后面。? 0次或者1次* 0次或者多次+ 1次或者多次{n} 出现n次{n,m} 最少出现n次,最多出现m次{n,} 最多n次