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

元字符

1.[a-z]匹配任何包含小写字母a-z的字符串 值匹配一个字符

<?php
 $mode='/p[a-z]p/';
 $string='php';
 if(preg_match($mode,$string))
{
 echo'匹配';
}
else
{
 echo '不匹配';
}
//结果匹配
?>
<?php
 $mode='/p[a-z]p/';
 $string='pHp';//或者H代替为数字 符号都是不匹配的
 
 if(preg_match($mode,$string))
{
 echo'匹配';
}
else
{
 echo '不匹配';
}
//结果不匹配
?>

2.[0-9]匹配任何含有0-9数字的字符串 /d作用与此相同/D作用相反

<?php
$mode='/p[0-9]p/'; $string='p2p'; if(preg_match($mode,$string)) { echo '匹配'; } else { echo '不匹配'; //答案匹配 } ?> <?php $mode='/p[0-9]p/'; $string='php'; if(preg_match($mode,$string)) { echo '匹配'; } else { echo '不匹配';
} //答案不匹配 ?>

<?php
$mode='/p[\d]p/';
$string='php';
if(preg_match($mode,$string))
{
 echo '匹配';
}
else
{
echo '不匹配';
} //答案不匹配 ?>

<?php
$mode='/p[\D]p/';
$string='php';
if(preg_match($mode,$string))
{
 echo '匹配';
}
else
{
echo '不匹配';
} //答案匹配 ?>

3.\w包含a-z0-9A-Z_的字符串 相反\W不包含

<?php
$mode='/p[\w]p/';
$string='php';
if(preg_match($mode,$string))
{echo '匹配';}
else{
echo '不匹配';
}
//答案匹配
?>

<?php
$mode='/p[\W]p/';
$string='php';
if(preg_match($mode,$string))
{echo '匹配';}
else{
echo '不匹配';
}
//答案不匹配
?>

4.\匹配特殊字符的转义

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

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

修饰符  

1.i完全不区分大小写

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

2.x忽略空白

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

3.m识别多行

<?php
 $mode='/php$/m';
 $string="php\n PHP";
 echo $string;
 if(preg_match($mode,$string))
{
echo '匹配';
}
else
{
echo'不匹配';
}

?>

4.a作用同^强制开头匹配

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

  

  

  

  

  

  

posted @ 2016-07-27 19:26  jimtang  阅读(102)  评论(0)    收藏  举报