PHP:第六章——正则表达式的基本概念

<?php
header("Content-Type:text/html;charset=utf-8");
//正则表达式的基本概念:
//宽松匹配和严格匹配:

//常见的匹配模式:

//模式一:/p/ 功能:匹配任何包含字符p的字符串。

//模式二:/php/  功能:匹配任何包含php的字符串。

//模式三:/[0-9]/ 功能:匹配包含0-9中十个数字中的任何一个数字的字符串。

//模式四:/^[0-9]$/ 功能:匹配包含0-9中的任何一个数字的字符串。只能是一个不能是多个。

//模式五:/^[0-9]{11}$/ 功能:匹配11位的手机号码。{}中的内容是量词,表示必须出现的次数。

//模式六:/^[0-9]{2,5}$/功能:匹配2到5个数字。{}中的内容限制了出现的次数。

//preg_match()函数精讲:匹配成功返回1,匹配失败返回0
/*
参数:
参数一: $Pattern (必须的参数)  要匹配的模式。
参数二: $str  (必须的参数)      输入要匹配的字符串。
参数三: $matches (可选的)   如果匹配成功把匹配结果放入到参数三指定的数组中。
参数四: $flags (可选的)     返回匹配发生在字符串的第几位
这个参数如果不为空只能是  PREG_OFFSET_CAPTURE 这个常量或这个常量的值 256 
参数五: $offset (可选的)    匹配从字符串的第几位开始,默认是0.
*/

//例:
/*$ptn="/P/";
$str="myPHP";
echo preg_match($ptn,$str,$arr,PREG_OFFSET_CAPTURE,3); //输出1。
print_r($arr);*/
//输出:Array ( [0] => Array ( [0] => P [1] => 4 ) ) ;数组中的4表示在下标4的位置上找到的。
//第五个参数3表示,从下标为3的位置开始查找。

//例:
$str="精讲PHP";
$ptn="/^[\\x7f-\\xff]+$/";
if(preg_match($ptn,$str)){
    echo "\"$str\":是中文";
}else{
    echo "\"$str\":不全是中文";
}

?>

 

posted @ 2017-07-29 07:11  生如逆旅,一苇以航  阅读(169)  评论(0编辑  收藏  举报