>php教程 >php手册 >preg_match函数详解[wei静态充电]

preg_match函数详解[wei静态充电]

WBOY
WBOY원래의
2016-06-13 10:51:581814검색

$str='sdfasfs12333ddd12233';

preg_match('/\d\d\d/si',$str,$arr);//找三个连续数字

echo '

';
<p>print_r($arr);</p>
<p>echo '</p>
';

1。此函数,只会配第一个符合的值。

2。$arr[0]存其结果。


preg_match_all所有结果,故是二维数组:$arr[0][1]存放第一个结果,$arr[0][n]存放第n个结果;

$arr[1][0]存放第一个结果中的,第一个子表达式的结果,$arr[1][n]存放第n+1个结果中的,第一个子表达式的结果;

 

例子:wei静态时,最常使用的知识点

$str="111-555-666 dfs5+fsfffsd-2215affsfsdf";

preg_match('/(\d)\1{2}-(\d)\2{2}-(\d)\3{2}/si',$str,$arr);//一定要使用',不能使用“,因为存在反向捕获


第二:http://localhost/wc.php/15,23,45.html处理方法:

法一,在php中使用正则表处理;$_SERVER[PATH_INFO];

$para=$_SERVER['PATH_INFO'];

$pattern='/(\d)+/si';//有一个数字
$pattern='/\/(\d+),(\d+),(\d+)\.html$/si';
preg_match($pattern,$para,$arr);

法二,使用apache rewrite处理。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.