php 正则表达式 匹配网站内容
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 正则表达式 匹配网站内容相关的知识,希望对你有一定的参考价值。
我怎么匹配到这两个P 标签里的内容
<div class="nav" monkey="nav">和<div class="head-ad">之间的所有源码,用 preg_match 就可以,不用preg_match_all ,如果你要里面的所有的 <li></li>标签中的内容,可以用preg_match_all
//提取所有代码
$pattern = \'/<div class="nav" monkey="nav">(.+?)<div class="head-ad">/is\';
preg_match($pattern, $string, $match);
//$match[0] 即为<div class="nav" monkey="nav">和<div class="head-ad">之间的所有源码
echo $match[0];
//然后再提取<li></li>之间的内容
$pattern = \'/<li.*?>(.+?)<\\/li>/is\';
preg_match_all($pattern, $match[0], $results);
$new_arr=array_unique($results[0]);
foreach($new_arr as $kkk)
echo $kkk;
参考技术A preg正则php 正则表达式匹配(持续更新)
正则表达式匹配网址:
<?php
header(‘Content-type:text/html;charset=utf-8‘);
$str = ‘
百度http://www.baidu.com网站
谷歌https://www.google.net网站
土豆ftp://bbs.tudou.org网站
网易http://mail.163.cn网站
优酷ftps://www.youku.club网站
迅雷http://ftp.xunlei.com网站
自己http://www.china-zqcm.com/php/index.php?name=zhangsan&age=18的
‘;
$pre = ‘/(http|https|ftp|ftps)\:\/\/(www|bbs|mail|ftp)\.([\w\-]+)\.(com|net|org|club)[\/\.\?\=\&\w\s]*/‘;//
if(preg_match_all($pre,$str,$arr))
echo ‘正则表达式<b>‘.$pre.‘</b>匹配字符串<b>‘.$str.‘</b>成功‘;
echo ‘<pre>‘;
print_r($arr);
else
echo ‘匹配失败‘;
?>
\w 表示[a-zA-Z0-9]
正则表达式匹配邮箱
1 <?php 2 header(‘Content-type:text/html;charset=utf-8‘); 3 $str = ‘ 4 妹子[email protected]的邮箱 5 妹子[email protected]的邮箱 6 妹子[email protected]的邮箱 7 妹子[email protected]的邮箱 8 妹子[email protected]的邮箱 9 妹子[email protected]的邮箱 10 11 ‘; 12 $pre = ‘/[\w\+\-\.][email protected][\w\-]+\.(com|net)+/‘; 13 if(preg_match_all($pre,$str,$arr)) 14 echo ‘<pre>‘; 15 print_r($arr); 16 else 17 echo ‘匹配失败‘; 18 19 ?>
以上是关于php 正则表达式 匹配网站内容的主要内容,如果未能解决你的问题,请参考以下文章