《PHP正则表达式》
PHP正则表达式
正则表达式
正则表达式是一种可以用于模式匹配和替换的强有力的工具。
正则表达式可以让用户通过使用一系列的特殊字符构建匹配模
式,然后把匹配模式与数据文件、程序输入以及WEB页面的《PHP正则表达式》
PHP正则表达式
正则表达式
正则表达式是一种可以用于模式匹配和替换的强有力的工具。
正则表达式可以让用户通过使用一系列的特殊字符构建匹配模
式,然后把匹配模式与数据文件、程序输入以及WEB页面的表单输
入等目标对象进行比较,根据比较对象中是否包含匹配模式,执
行相应的程序。
例: ^http 表示匹配以http开头的所有字符
[a-z] 匹配所有小写字符
abc 匹配字符串abc
PHP正则表达式
正则表达式的元字符
元字符
名称
描述
\
反斜杠
转义字符 \t
|
管道运算符
|pig
()
圆括号
把字符,(dog|pig)baz
[]
方括号
建立一个字符类,将匹配芳括号中的任一字符
{}
大括号
为前导表达式定义最小/最大匹配数目
^
插入符
匹配一行的起点
$
美元符
匹配一行的结束
*
星号
匹配0个或者多个前导表达式
?
问号
匹配0个或者1个前导表达式
+
加号
匹配1个或者多个前导表达式
.
点
匹配任何一个字符
PHP正则表达式
匹配正则表达式模式
preg_match(pattern,subject)
表示在subject字符串中搜索与pattern给出的正则表达式相匹配的
(0次或1次).0次表示没有匹配
结果,函数返回一个false
例如:
$str = “php is a good language”;
preg_match(“/php/”,$str);
PHP正则表达式
模式,是正规表达式最基本的元素,它们是一组描述字符串特
征的字符。模式可以很简单,由普通的字符串组成,也可以非常
复杂,往往用特殊的字符表示一个范围内的字符重复出现,或表
示上下文。我们先看一些正则表达式中的特殊字符。
字符: ^ 意义:表示匹配的字符必须在最前边。 例如:
preg_match(/^A/,”A good language”) //匹配成功
字符: $ 意义:与^类似,匹配最末的字符。 例如:
preg_match(/t$/,”eat”) //匹配成功
PHP正则表达式
字符* 意义:匹配*前面的字符0次或n次。 例如: preg_match(“/do*g/”,”doog”) //匹配成功
字符+ 意义:匹配+号前面的字符1次或n次。等价于{ 1, }。 例如:preg_match(“/do+g”,”dg”) //不匹配
字符? 意义:匹配?前面的字符0次或1次。 例如:preg_match(“/do?g/”,”dg”) //匹配
PHP正则表达式
字符. 意义:(小数点)匹配除换行符外的所有单个的字符。 例如:/.n/匹配“nay, an”中的‘an’,但不匹配‘nay’。
字符(x) 意义:匹配‘x’并记录匹配的值。 例如:/(foo)/匹配和记录“foo bar.”中的‘foo’。匹配子串能被结果数组中的素[1], ...,[n] 返回
字符x│y 意义:匹配'x'或者'y'。 例如:/green│red/匹配"green apple"中的'green'和"red apple."中的'red'。
PHP正则表达式
字符{ n } 意义:这里的n是一个正整数。匹配前面的n个字符。 例如:/a{ 2 }/不匹配"candy,"中的'a',但匹配"caandy," 中的所有'a'和"caaandy."中前面的两个'a'。
字符{ n, } 意义:这里的n是一个正整数。匹配至少n个前面的字符。 例如:/a{ 2, }不匹配"candy"中的'a',但匹配"caandy"中的所有'a'和"caaaaaaandy."中的所有'a'
字符{ n,m } 意义:这里的n和m都是正整数。匹配至少n个最多m个前面的字符。 例如:/a{ 1,3 }/不匹配"cndy"中的任何字符,但匹配 "candy,"中的'a',"caandy," 中的前面两个 'a'和"caaaaaaandy"中前面的三个'a',注意:即使"caaaaaaandy" 中有很多个'a',但只匹配前面的三 个'a'即"aaa"。
正则表达式 来自淘豆网m.daumloan.com转载请标明出处.