PHP正则使用技巧1

$pattern="/<div class=\"cover g-playicon\">(.*?)>/s";

意思为抓取<div class="cover g-playicon">到>结束的字符串

其中的/s修正符代表视为一行,在匹配带有换行符空格等内容时非常有用

但是这样匹配会连着<div class="cover g-playicon">一起作为结果输出

$pattern="/(?:<div class=\"cover g-playicon\">)(.*?)>/s";

加上(?:字符)则在结果输出时表示不捕获这个字符

只匹配图像URL的正则是

$img_pt = '/src="(.*?(jpg|jpeg|gif|png))/';

匹配标题

$rutitle="/<h1>(.*?)<\/h1>/";

//过滤掉字符串中的换行字符表

$rs=preg_replace("/[\t\n\r]+/","",$rs);

匹配超链接地址

$preg='/<a .*?href="(.*?)".*?>/';

$patten="/<a href=[\'\"]?([^\'\" ]+).*?>/";

$pattern=/href=\"[^\"]*\"/;

preg_match_all('/(<a.*>)/U', $str,$list);

匹配多个href链接

$pattern='/href=\"([^(\}>)]+)\"/';

 

posted @ 2017-11-01 20:11  博雅源  阅读(185)  评论(0编辑  收藏  举报