php正则表达式(regar expression)

yipeiwu_com6年前PHP代码库
引言: 在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串

的需要。正则表达式就是用于描述这些规则的语法。
例:在判断用户邮件地址格式、手机号码格式或者采集别人网页内容时.
php也常常用到正则表达式 php有两个常用的正则表达式函数:preg_match和ereg。
我今天刚看了preg_match.它的具体写法是preg_match(mode,string subject,array matches);
以下是我写的一个example.
复制代码 代码如下:

<?php
$mode="/[^8s]/";//匹配模块
$str="sssjj88d";//匹配内容
echo "<hr>";
if(preg_match($mode,$str,$arr)){ //匹配函数
echo "匹配成功".$arr[0];//$arr[0]:匹配结果集的第一个值
}
else{
echo "匹配失败";
}

结果:
正则表达式(regular expression)"元字符":
*匹配前一个内容的0次或多次,即前一个内容任意都匹配
.匹配内容的0次1次或多次,但不包含回车换行
+ 匹配前一个内容的1次或多次(除了空)。
| 选择匹配类似PHP中的| (因为这个运算符合是弱类型导致前面最为整体匹配)
^ 匹配字符串首部内容
$ 匹配字符串尾部内容
{a,b},表示匹配前一个内容的次数,这个表示次数从a到b之间。
( ) 合并整体匹配,并放入内存,可使用\1 \2…依次获取
以下是我用php写的一个example:
复制代码 代码如下:

<?php
$mode="/\d{2,4}(.*)\d{1,2}\\1\d{1,2}/";//匹配模块一般写得越简单越好
//$mode="/2009(.*)9\\1(10)/";
$str="2011/9/10";
if(preg_match($mode,$str,$arr)){
echo "匹配成功"."<br/><font color=red>".$arr[0]."</font><br/><br/><font size='+4' color=blue>教师节快乐</font>";
}
else{
echo "匹配失败";
}
?>

结果:

相关文章

php简单读取.vcf格式文件的方法示例

本文实例讲述了php简单读取.vcf格式文件的方法。分享给大家供大家参考,具体如下: /** * 读取.vcf格式文件 * @param $filename */ function...

PHP采集利器 Snoopy 试用心得

Snoopy是什么? (下载snoopy) Snoopy是一个php类,用来模仿web浏览器的功能,它能完成获取网页内容和发送表单的任务。 Snoopy的一些特点: * 方便抓取网页的内...

php修改NetBeans默认字体的大小

在Netbeans中由于使用了Swing进行开发,所以其中界面的字体也是由Java虚拟机进行配置而不是随操作系统的。在安装完Netbeans后默认的字体大小是11px。而在Windows...

PHP简单实现解析xml为数组的方法

本文实例讲述了PHP简单实现解析xml为数组的方法。分享给大家供大家参考,具体如下: 最近想要做一个插件机制,需要用到xml,在解析xml时候需要转换为数组,特意记录一个此种解析方式 x...

PHP实现的CURL非阻塞调用类

本文实例讲述了PHP实现的CURL非阻塞调用类。分享给大家供大家参考,具体如下: 前面一篇《PHP实现非阻塞模式的方法》文章讲述了PHP中实现非阻塞模式,其实如果只是HTTP的话,直接用...