php正则表达来获取html中的部分内容

<div class="wap2"><span>功能</span>这里面是要获取的内容,不能确定什么字符,可能是数字(123456…)字母(babaidn…),特殊浮等(o_O\(^o^)/…)</div>

如上在取div内的的非span里的内容,内容不确定。 要用正则匹配得到。 还有preg_grep;preg_split;preg_replace;preg_match的特点都有那些,此处用哪个合适,感觉应该是preg_match,请高手指点。
不行,那个正则表达试我测试时总是出来空函数,显然不对。

1、几种函数的简单说明:

(1)preg_grep -- 返回与模式匹配的数组单元
preg_grep 返回一个input 数组中与给定的 pattern 模式相匹配的单元所组成的数组。

(2)preg_match -- 进行正则表达式匹配
说明:int preg_match ( string pattern, string subject [, array matches [, int flags]] )在 subject 字符串中搜索与 pattern 给出的正则表达式相匹配的内容。 返回值0或1。

(3)preg_replace -- 执行正则表达式的搜索和替换

(4)preg_split -- 用正则表达式分割字符串

2. 一般来说,如果用正则来获取匹配内容,一般使用 preg_match/ preg_match_all 函数。

补充回答:

正则表达式如下:
'%<div class="wap2"><span>功能</span>(.*?)</div>%si'

以下是代码,经测试,运行正常:

<?php
$str = '<div class="wap2"><span>功能</span>这里面是要获取的内容,不能确定什么字符,可能是数字(123456…)字母(babaidn…),特殊浮等(o_O\(^o^)/…)</div>';
$pa = '%<div class="wap2"><span>功能</span>(.*?)</div>%si';
preg_match($pa,$str,$r);
echo $r[1];
?>
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-04-21
preg_match
相似回答