PHP学习记录之正则表达式(一)

preg_match()进行正则表达式:

<?php
 $mode='/php/';
 $string='php';
 if (preg_match($mode,$string))
 {
    echo '匹配';
 }
 else
  {
   echo'不匹配';
 }
?>

  

量词:

1.+匹配前一个字符至少包含一个

<?php
 $mode='/ph+p/';
 $string='phhp';
 if(preg_match($mode,$string)){
  echo '匹配';
 }
 else
 {
 echo'不匹配';
 }
//结果为匹配
 $mode='/ph+p/';
 $string='pp';
 if(preg_match($mode,$string)){
  echo '匹配';
 }
 else
 {
 echo'不匹配';
 }
 //结果为不匹配
 
?>

2.匹配前面字符至少0个或多个

<?php
 $mode='/ph*p/';
 $string='pp';
 if(preg_match($mode,$string))
 {
  echo '匹配';
 }
  else{echo '不匹配';}
 //结果为匹配//如为php或者phhhhhhhhhp也匹配
 $mode='/ph*p/';
 $string='p0p';
 if(preg_match($mode,$string))
 {
  echo '匹配';
 }
  else{echo '不匹配';}
 //结果不匹配
?>

3.?匹配前面字符0个或1个 

<?php
 $mode='/ph?p/';
 $string='php';
 if(preg_match($mode,$string))
 {echo'匹配';}
 else
 {echo'不匹配';}
//结果为匹配 $string='pp'也匹配
?>
<?php
 $mode='/ph?p/';
 $string='phhp';
 if(preg_match($mode,$string))
 {echo'匹配';}
 else
 {echo'不匹配';}
//结果为不匹配
?>

4.{X}前导必须X个,{x,y}前导x-y个,{x,}前导至少X个

<?php
$mode='/ph{2}p/';
$string='phhp';
if(preg_match($mode,$string))
{
 echo'匹配';
}
else
{
echo'不匹配';
}
//结果为匹配
?>
<?php
$mode='/ph{2,3}p/';
$string='phhhp';
if(preg_match($mode,$string))
{
 echo'匹配';
}
else
{
echo'不匹配';
}
//结果为匹配
?>

<?php
$mode='/ph{2,}p/';
$string='phhhp';
if(preg_match($mode,$string))
{
 echo'匹配';
}
else
{
echo'不匹配';
}
//结果为匹配
?>
<?php
$mode='/ph{2}p/';
$string='phhhp';
if(preg_match($mode,$string))
{
 echo'匹配';
}
else
{
echo'不匹配';
}
//结果为不匹配
?>

5.$从尾部开始匹配和^从头开始匹配

<?php
$mode='/php$/';
$string='dfasdfadsfdfsadfphp';
if(preg_match($mode,$string))
{
 echo '匹配';
}
else
{
echo'不匹配';
}
?>

<?php
$mode='/^php/';
$string='phpdfasdfadsfdfsadf';
if(preg_match($mode,$string))
{
 echo '匹配';
}
else
{
echo'不匹配';
}
?>

6.|

<?php
 $mode='/php|asp/';
 $string='asp';
 if(preg_match($mode,$string))
{
 echo'匹配';
}
else
{
echo'不匹配';
}
?>

  

  

  

  

 

  

posted @ 2016-07-27 16:45  jimtang  阅读(122)  评论(0)    收藏  举报