正则表达式要求匹配不出现某几个连续字符的字符串 10

1,<strong>:</strong>apersonwhopaysafixedsumforsomeprivilegeorsourceofincome</span>2,<... 1,<strong>:</strong> a person who pays a fixed sum for some privilege or source of income </span>
2,<strong>:</strong> a person who pays a fixed sum for some privilege or <a href="/dirname/something.html">beauty girl</a> source of income </span>
我想得到<strong>:</strong>
之后到</span>前的所有字符。用preg_match_all('/<strong>:<\/strong>([^<]*)</span>/',$str,$matches),$matches只能得到第一个字符串,第二个取不出来。
用preg_match_all('/<strong>:<\/strong>([^<]*[^<][^\/]+)</span>/',$str,$matches)也不行。
关键是忽略掉字符串中的一些标签,如a div table span这种
$str = file_get_contents('http://www.merriam-webster.com/dictionary/butcher');
preg_match_all('/<strong>:<\/strong>([^<]*)<\/span>/',$str,$matches);

echo '<pre>';
print_r($matches);
echo '</pre>';
我只是想把上面那个页面源代码中<strong>:</strong> 到</span>中的字符串取出来,之间忽略任意HTML 标签,直到遇到第一个</span>结束
展开
 我来答
脱苦海工作室
2014-06-23 · 超过91用户采纳过TA的回答
知道小有建树答主
回答量:200
采纳率:0%
帮助的人:179万
展开全部
试试这个

preg_match_all('/<strong>:<\/strong>([\s\S]*)</span>/',$str,$matches)
更多追问追答
追问
没管用,
追答

什么语言啊,去掉/可以么?你说的忽略是直接不要那些内容,还是什么意思?

preg_match_all('<strong>:</strong>([\s\S]*)</span>',$str,$matches)


已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式