preg_match用法
2016-03-04 09:49
176 查看
preg_match
利用preg_match(),我们可以完成字符串的规则匹配。如果找到一个匹配,preg_match() 函数返回 1,否则返回
0。还有一个可选的第三参数可以让你把匹配的部分存在一个数组中。在验证数据时这个功能可以变得非常有用。
$string = "football";
if (preg_match('/foo/', $string)) {
// 匹配正确
}
上面的例子将成功匹配,因为单词 football 里面包含 foo。现在我们来试一个更复杂的,例如验证一个 Email
地址。
$string = "first.last@domain.uno.dos";
if (preg_match(
'/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',
$string)) {
// 验证Email地址
}
这个例子将验证出此 Email 地址为正确格式。现在让我们来看看这段正则表达式所代表的各种规则。
PCRE 顾名思义,与在 Perl
中的正则表达式有相同的语法,所以每段正则表达式必须要有一对定界符。我们一般使用 /[/b] 为定界符。
开头的 ^[/b] 和结尾的 $[/b] 让PHP从字符串开头检查到结尾。假使没有
$,程序仍会匹配到 Email 的末尾。
[[/b] 和 ][/b] 被用来限制许可输入类型。例如
a-z 允许所有的小写字母,A-Z 允许所有的大写字母,0-9
所有数字,等等,以及更多其他类型。
{[/b] 和 }[/b] 被用来限制期望的字符数。例如
{2,4} 表示字符串的每一节可以有 2-4 字符长度,像是 .com.cn 或 .info。在这里,
".[/b]"
并不算一个字符,因为 {2,4} 之前定义的许可输入类型只有大小写字母,故此段只匹配大小写字母
([/b] 和 )[/b] 被用来合并小节,并定义字符串中必须存在的字符。(a|b|c)
能够匹配 a 或 b 或 c。
(.[/b])
将匹配所有字符,而 [.] 只匹配 ".[/b]"
本身。
要使用一些符号本身,必须在前增加一个 。这些字符有:(
) [ ] . * ? + ^ | $[/b]
相关文章推荐
- preg_replace 基础入门应用
- preg_replace
- keepalived学习笔记
- vps安装centos系统LNMP环境详细配…
- vps安装centos系统LNMP环境详细配…
- php抓取网页内容的方法
- 布尔判断命令
- vps安装centos系统LNMP环境详细配…
- 如何区别jdk,eclipse,tomcat 32为或者64为呢
- 设备中创建新相册(粘贴)
- Ajax学习(3)数据格式提要
- MediaWiki使用指南
- iOS Push & pop
- android图像模糊技术
- PHP-CGI 进程 CPU …
- 抽象工厂模式和工厂方法模式区别
- PHP对大文件的处理思路
- ini_set用法
- ini_set的用法
- PHP中extract()函数的妙用