菜鸟问题
自学php 请多多指教
php 正则表达式 如何捕获 两个HTML标签内的内容并打印如:<html> 
<head> </head> 
<body> 
编号:<id>2334</id>
姓名:<name>天亮</name> 
性别:<sex>男</sex> 
身高:<hig>170</hig> 
</body> 
</html> 
现在 已经把 整个 <html>之间的东西  全不读取在 $content 之中
现在我只想打印 “天亮” !怎么用 正则表达式显示出来

解决方案 »

  1.   


    preg_match('/\<name\>([^\<]*)\<\/name\>/', $content, $matchs);
    echo $matchs[1];
      

  2.   

    谢谢1楼的 20分先给你! 但是 能不能 通过 前面的 “姓名”来匹配呢  假如 我的 文件是这个形式 如下
    <html> 
    <head> </head> 
    <body> 
    <table>
    ...
     <td>编号: </td><td>2334 </td> 
     <td>姓名: </td><td>天亮 </td>
     <td>性别: </td><td>男 </td> 
     <td>身高: </td><td>170 </td>
    .....
    </table>
    </body> 
    </html> 
    这个怎么打印 出 “天亮”
      

  3.   

    /<td>姓名:[ ]*<\/td>[ ]*<td>([^<]*)<\/td>/ 其它一样
      

  4.   

    preg_match('/\<td\>'.chr(0xd0).chr(0xd5).chr(0xc3).chr(0xfb).'[^\<]*\<\/td\>[\s]*\<td\>([^\<]*)\<\/td\>/', $content, $matches);echo $matches[1];
      

  5.   

    这个用的是gbk编码如果是其它编码 可以用 iconv 转换一下 
      

  6.   

    谢谢 phpBoy005
    ......
    .chr(0xd0).chr(0xd5).chr(0xc3).chr(0xfb).....囧   我水平菜了  这个怎么理解