ホームページ >php教程 >php手册 >preg_match函数详解[wei静态充电]

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

WBOY
WBOYオリジナル
2016-06-13 10:51:581810ブラウズ

$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 までご連絡ください。