问个正则的问题 [ 新手入门 ]
抓了一段html代码
<span><a href="http://xxxxx/xxxxxxxxx.aspx?value=%e6%88%98%e5%a3%ab#ul-yx">战士</a> <a href="http://xxxxxxxxxxxxxx.aspx?value=%e5%88%ba%e5%ae%a2#ul-yx">刺客</a>
然后我现在想抓里面 刺客2个字,我写了一个正则
preg_match_all('|>([\S]{2})<|', $outMTopDiv1[1][0], $outMTopDiv, PREG_SET_ORDER);
我在线测了下 >([\S]{2})< 这个在 http://regexpal.com/里面可以正常抓到,但是放到php里面就失效了,如果去掉 > < 就可以抓到 可是太多了。。。是不是><这个引起冲突了
共 7 条回复
-
扫描对象是这个字符串
<span><a href="http://xxxxx/xxxxxxxxx.aspx?value=%e6%88%98%e5%a3%ab#ul-yx">战士</a> <a href="http://xxxxxxxxxxxxxx.aspx?value=%e5%88%ba%e5%ae%a2#ul-yx">刺客</a>
目的 提取:战士 和刺客 2个关键词
正则:
工作的情况:(get words)preg_match_all('|>([\S]{2})<|u', $outMTopDiv1[1][0], $outMTopDiv, PREG_SET_ORDER);
不工作的情况:(empty array)
preg_match_all('|>([\S]{2})<|', $outMTopDiv1[1][0], $outMTopDiv, PREG_SET_ORDER);
我很迷惑。。
BoyLee
注册时间:2011-03-10
最后登录:2019-12-26
在线时长:20小时5分
最后登录:2019-12-26
在线时长:20小时5分
- 粉丝22
- 金钱2810
- 威望150
- 积分4510