PHP学习笔记–PHP正则表达式

  •   
  • 4265
  • PHP
  • 4
  • super_dodo
  • 2014/11/28

PHP学习笔记--PHP正则表达式

普通字符
\w 		//匹配包括下划线的任何单词字符 等价于 '[A-Za-z0-9_]'
\W 		//匹配任何非单词字符 等价于 '[^A-Za-z0-9_]'

非打印字符
\cw 	//匹配由x指明的控制字符,x的值必须为A-Z或a-z之一
\f 		//匹配一个换页符
\n      //匹配一个换行符
\r 		//匹配一个回车符
\s 		//匹配任何空白字符,包括空格制表符换页符等  等价于 [\f\n\r\t\v]
\S  	//匹配任何非空白字符 		等价于 [^\f\n\r\t\v]
\t 		//匹配一个制表符 	等价于 \x09 \cI
\v   	//匹配一个垂直制表符

特殊字符
$ 		//匹配输入字符串的结尾位置
() 		//标记一个子表达式的开始和结束的位置
* 		//匹配前面的字表达式零次或多次
+ 		//匹配钱面的子表达式一次或多次
. 		//匹配除换行符\n之外的任何单字符
[ 		//标记一个中括号表达式的开始,若要匹配[ 请使用 \[
? 		//匹配前面的子表达式零次或一次,或指明一个非贪婪限定符
\ 		//将洗衣歌字符标记为或特殊字符,或原义字符,或向后引用,或八进制转义符
^ 		//匹配输入字符串的开始位置,除非在方括号表达式中使用,此时表示不接受该字符集合
{  		//标记限定符表达式的开始
| 		//指明两项之间的一个选择

限定符
* 		//匹配前面的子表达式零次或多次
+		//匹配前面的子表示一次或多次
? 		//匹配前面的表达式零次或一次
{n} 	//n是一个非负的整数,匹配确定的n次
{n,} 	//n是一个非负的整数,至少匹配n次
{n,m}	//m,n均是非负整数,最少匹配n次且最多匹配m次

定位符
^ 		//字符串的开始
$ 		//字符串的结束
\b 		//描述单词的前或后边界
\B 		//表示非单词边界

1.如果只想查看一个字符串是否包含在一个字符串中,不要用preg_match() 可以使用strpos()或strstr()替代,要快得多。
2.模式定界符后面的"i"表示不区分大小写字母和检索
3.模式中\b表示单词的边界,只有独立的单词才会被匹配。
4.空格字符可以简单的处理为普通字符" ",但在实际中常使用"[[:space]]" 来替代,这样的字符串中更易读,例如"I[[:space]]am" 表示为 "I am"

闲情难抛,漫做胭脂泪。倦凭栏,看帘外烟柳繁花,细雨斜风。只道春已去,小桥楼阁飞絮落花无数。愁铺流云,恨随芳草,绵绵延延无尽头。情多总是病,意深不堪酒,日日里,看青山消隐,流水无意,人比黄花瘦!