网站地图    收藏   

主页 > 后端 > php资料库 >

php中的正则表示的使用基础教程_自学php网

来源:自学PHP网    时间:2014-12-04 22:12 作者: 阅读:

[导读] 不管是在是php中,还是在javascript中,正则表达式都是作为一个十分重要的角色存在着,今天我们来学习php中正则表达式的使用。其实正则表达式最最重要的使用就是两个方面,一个验证...

不管是在是php中,还是在javascript中,正则表达式都是作为一个十分重要的角色存在着,今天我们来学习php中正则表达式的使用。其实正则表达式最最重要的使用就是两个方面,一个验证用户的信息是不是符合要求,另外一个就是字符串的截取。

1.验证信息

在php中验证信息主要的是使用ereg和eregi,这两个函数的区别就是后面一个是不区分大小写的,其他的都是一样,他们接受两个参数,这两个参数都是字符串,但是第一个是正则表达式,第二个是需要验证的字符。

ereg(“([a-z])+”, $letters);它是返回匹配的字符的数,如果不匹配,就返回false,所以我们就能通过if语句来判断返回的结果,作为是不是符合要的信息。

比如:

$email=”pant_ingwen@126.com“;

if (ereg(“^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+”,$email)){

echo “您的 E-Mail 通过初步检查<br/>”;

}

 

2.截取字符串

php中正则表达式另外一个很重要的用处就是截取字符串,通常我们都是需要从一个字符串里面截取一些信息,比如一段文本里面找出一个邮箱地址等等的。这时候主要使用都php的preg_match_all函数,这个函数的使用和ereg的差不多,只是这个返回的结果是数组,也就是匹配之后的结果字符串,preg_match_all(“([0-9]+)”,”sdsdsdsd56565656dfdfdf”,$result);这样放回的结果就放在了$result里面了,但是我们要注意的这个是一个二维数组,我们获取里面数值需要使用$result[o][0]来获取。

preg_match_all(“([0-9]+)”,”sdsdsdsd56565656dfdfdf”,$result);

echo “提出出来的数字是:”.$result[0][0];//结果显示就是:提出出来的数字是:56565656

 

本文演示代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>


<?php
//在php中a-z表示a到z的字母,A-Z表示A-Z的字母,0-9表示数字,^表示开始,$表示结束
//在php中的正则表达式的函数式

$number=123;
if(ereg("([0-9])+", $number)){
echo "这是一个数字<br/>";
}

$letters="asdfghjk";
if(ereg("([a-z])+", $letters)){
echo "这是一些字母<br/>";
}

$email="pant_ingwen@126.com";
if (ereg("^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+",$email)) {
echo "您的 E-Mail 通过初步检查<br/>";
}

$letters2="aaaaaaaaaaaaaaaZZZZZZZZZZZZZZ";
if(eregi("([a-z])+", $letters2)){
echo "这是不区分大小写的字符串<br/>";
}


//知道正则表达式的规则,我们就可以写出这些表达式
//比如QQ
$qq=980502568;
$qq2=0123;
if(ereg("[1-9][0-9]{4,10}", $qq2)){
echo "你的qq是正确的<br/>";
}else{
echo "你的qq号码不正确<br/>";
}


preg_match_all("([0-9]+)","sdsdsdsd56565656dfdfdf",$result);

echo "提出出来的数字是:".$result[0][0];
?>

</body>
</html>
 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论