>  기사  >  백엔드 개발  >  正则表达式如何得到网址和汉字

正则表达式如何得到网址和汉字

WBOY
WBOY원래의
2016-06-13 13:41:061049검색

正则表达式怎么得到网址和汉字



  [玄幻魔法]

  斗破苍穹

  第一章 五帝破空

  天蚕土豆

  08-01

  连载

  1608

 


------解决方案--------------------
PHP code

//题目说得不是很清楚,汉字?是指a标签的内容,还是所有的中文?
//这里暂时以标签内容处理
$str = '<tr class="line">

  <td align="center">[玄幻魔法]</td>

  <td><a href="http://www.xiaoshuo5200.net/html/0/1/index.html">斗破苍穹</a></td>

  <td><a href="http://www.xiaoshuo5200.net/html/0/1/640748.html" target="_blank">第一章 五帝破空</a></td>

  <td>天蚕土豆</td>

  <td>08-01</td>

  <td align="center">连载</td>

  <td align="center">1608</td>

  </tr>';
preg_match_all('/<a.>(.*)/isU', $str, $matches);
foreach($matches[1] as $k=>$v) {
    echo $v . '=>' . $matches[2][$k] . '<br>';
}
/**
输出结果:
http://www.xiaoshuo5200.net/html/0/1/index.html=>斗破苍穹
http://www.xiaoshuo5200.net/html/0/1/640748.html=>第一章 五帝破空
*/
<br><font color="#e78608">------解决方案--------------------</font><br>
<dl class="code">PHP code<pre class="brush:php;toolbar:false">
<?php $str = <<<EOT
 <tr class="line">

  <td align="center">[玄幻魔法]</td>

  <td><a href="http://www.xiaoshuo5200.net/html/0/1/index.html">斗破苍穹</a></td>

  <td><a href="http://www.xiaoshuo5200.net/html/0/1/640748.html" target="_blank">第一章 五帝破空</a></td>

  <td>天蚕土豆</td>

  <td>08-01</td>

  <td align="center">连载</td>

  <td align="center">1608</td>

  
EOT;
$patten = '/<td>(<a target="[^">)?([^]*)()?/isU';

preg_match_all($patten,$str,$arr);  
echo "<pre class="brush:php;toolbar:false">";
print_r($arr[3]);
print_r($arr[5]);
echo "
";
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.