正则表达式在查找字符串方面有非常重要的作用,可以提供比以前更为复杂的搜索功能。共有三种用法:匹配,从某一个字符串抽取信息;用新文本替换替换匹配的文本;把字符串拆分成小块字符串组成的数组。
工具/原料
php编译环境
方法/步骤
1、首先介绍下正则擢爻充种的基础:有些字符在正则表达式中有特殊的意义。例如^就表示必须匹配开头的字符(准确的说就是,把漉胜衲仰表达式定位在你要匹配的字符串开头)。与此相对的$也就是美元符号代表着必须匹配字符串结尾(即,将正则表达式放到字符串尾部进行匹配)。另外还有.点,这个句点用来匹配任意单个字符。总结:^代表开头匹配,$代表末尾匹配,.用来匹配任一单个字符。看下图
2、字符类:可以通过螅岔出礤在中括号[]中包含可接受的字符集,建立一个自己的字符类/c[aeiou]t/,这就表示正则表达式引擎在c之后是元音字母,然后再看是t,则表明匹配成功。/c[^a髫潋啜缅eiou]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次