03_php正则表达式

目录

1php正则表达式……..…………………………………………………………………………..3

 

 

1、Php正则表达式

1.1、概念:

描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等。

1.2、应用范围:

表单验证、数据验证、字符替换等。如判断某个邮件地址是否正确。

所有的语言,如phpjava.netjavascript等都支持正则表达式。

1.3、写法:

“/expression/”

1.4、两个函数:

字符匹配:ereg()preg_match()
1)
、如果匹配返回1,也就是true;否则返回0,也就是false
2)
preg_match()ereg()的替代方案,preg_match()速度更快。

$aa=preg_match("/hi/","fdfhi ,china");

echo $aa; // 1


字符替换:ereg_replace()preg _replace()

echo preg_replace(“/hi/i”,“zuoyefeng”,“HI ,china php”);
//zuoyefeng ,czuoyefengna php 

i表示不区别大小写

1.5、元字符列表:

1“^” 插入符

/^first/  表示检测字符串是否以 first 开头

2“$” 美元符

/end$/  表示检测字符串是否以 end 结尾

3”.”  点号。点号是用来匹配除了换行符之外的任意字符

/e.d/  表示检测字符串是否匹配字符e加一个任意字符和字符d

4”-”  短横线。短横线被称为范围界定字符

/[0-9]/  表示字符串是否匹配任何数字   [^0-9] 非数字

5”|”  管道元字符

/(a|b)/  表示字符串含有字符a或字符b

6) { n,m }

这里的nm都是正整数。匹配至少n个最多m个前面的字符。

例如:/a{ 1,3 }/不匹配“andy”中的任何字符,但匹配“candy,”中的‘a’,“caandy,” 中的前面两个。

 

\w

意义:匹配所有的数字和字母以及下划线,等价于[A-Za-z0-9_]

例如:/w/匹配"apple,"中的'a'".28,"中的'5'"3D."中的'3'

\W

意义:匹配除数字、字母外及下划线外的其它字符,等价于[^A-Za-z0-9_]

例如:/W/或者/[^$A-Za-z0-9_]/匹配“50%.”中的‘%’

\d

 匹配一个数字字符。等价于 [0-9]

\D

匹配一个非数字字符。等价于 [^0-9]

$pattern = “/aa/i”; i表示不区别大小写
\n 意义:匹配一个换行符

\r 意义:匹配一个回车符

1.6、手机验证:

<?php

 $tel="13904459898";

$ab=preg_match("/^13[0-9]{9,9}$/",$tel);

/*

说明:

^表示这符开始(元字符)

$表示字符结尾(元字符)

13为普通字符

[0-9]表示一个0-9的数字

{9} 表示匹配9

表意:

后面的号码,如果是13开头的,中间有9个数字,并结尾,则符合条件

*/

1.7、邮箱验证:

function checkmail()

{

 $str=$_POST["mail"];

 $check=preg_match(“/^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]{2,4}$/",$str);

 if($check)

  echo "邮件地址正确";

  else

  echo "<font color=red>邮件不正确!</font>";

}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值