正则适用于多种语言,不管是脚本语言仍是后台语言都能看到它的身影,然而,它的做用是什么呢?我以为最主要的是匹配、替换、分割这三种。 web
在说这三种做用前,先说它的符号;
正则表达式
0、" ^ " :通常在匹配开始时表示匹配字符串的开始; 一、" $ " :这个表示匹配字符串的结束; 二、" \w " :这个表示匹配字母或数字或下划线; 三、" \d " :这个表示匹配数字; 四、" \b " :这个表示匹配单词的开始或结束; 五、"[^x]" :这个表示匹配除了x之外的任意字符; 六、" \s " :这个表示匹配任何空白符; 注:上面是小写,而大写则是表示相反意思!
还有特殊说明下,不知道有多少人想我同样,正反斜杠傻傻分不清楚的,”/“这个是正斜杠,在unix系统中表示目录,在web网址中也是用此表示目录;而”\“这个是是反斜杠;反斜杠在正则里面表示转译做用,在window系统中表示目录; 数组
而后说说正则的重复符号:
函数
0、" * " :表示重复前面字符零次或是屡次; 一、" + " :表示重复前面字符一次货是屡次; 二、" ? " :表示重复前面字符零次或是一次; 三、" {n} " :表示重复前面字符n次; 四、"{n,}" :表示重复前面字符最少n次 五、"{n,m}":表示重复前面字符n到m次;
模式修正符: spa
i 不区分大小写 m 此模式中若是有回车或换行,^和$将匹配每行的行首和行尾 s 让.能匹配\n x 忽略空白 U 取消贪婪,至关于(.*?) A 与^效果同样 D 结尾处不忽略回车 ,在结束处有$符的时候,在匹配的字符串后面加上回车,$依然可以匹配它成功。 可是加上D以后,结尾的回车,再也不匹配 NOTE:正则表达式是从左向右进行匹配的
正则函数: unix
preg_filter — 执行一个正则表达式搜索和替换
preg_grep — 返回匹配模式的数组条目
preg_last_error — 返回最后一个PCRE正则执行产生的错误代码
preg_match_all — 执行一个全局正则表达式匹配
preg_match — 执行一个正则表达式匹配
preg_quote — 转义正则表达式字符
preg_replace_callback — 执行一个正则表达式搜索而且使用一个回调进行替换
preg_replace — 执行一个正则表达式的搜索和替换
preg_split — 经过一个正则表达式分隔字符串
code