xiaogou61
2018-07-24 03:55
采纳率: 100%
浏览 662
已采纳

可以求大神帮忙看一下正则表达式怎么写吗

图片说明
我想要获取所有td标签中的内容,怎么让他只显示td标签中的东西打印出来

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

5条回答 默认 最新

  • 奔腾的野马 2018-07-24 04:14
    已采纳
     使用第一个正则表达式,匹配所有的tr标签
    比如:
    <tr align="center" bgcolor="#ffffff">
    <td>djflsjdfljsflj</td>
    </tr>
    
    var  regex = /<tr[^>]+align="center"[^>]+bgcolor="[^"]+?"\s*>[\s\S]+?<\/tr>/;
    
    再用第二条正则表达式来匹配tr中td标签
    比如:
    <td>djflsjdfljsflj</td>
    
    var  regex2 = /<td[^>]*>([\s\S]+)<\/td>/;
    
    然后分组功能取出第一组数据就是你要的内容。
    
    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • _zming 2018-07-24 04:21

    <([a-z]+)[^<]*>(.*)<\/\1>
    分组2是你想要的内容:
    var m = "&lg;td>dsfdsfds&lg;\td>".match(/<([a-z]+)[^<]*>(.*)<\/\1>/);
    alert(m[2]);

    评论
    解决 无用
    打赏 举报
  • csdnKeyborder 2018-07-24 06:42

    这个用不着正则表达式吧?直接将td标签中的内容取出放到数组中,再打印不是更简便些吗?还不会出错

    评论
    解决 无用
    打赏 举报
  • u014745984 2018-07-24 08:24

    图片说明

    评论
    解决 无用
    打赏 举报
  • qq_42732276 2018-07-24 11:36

    一定要用正则表达式吗?其实用document.getElementsByTagName()获取全部标签更容易
    像这样var b =document.getElementsByTagName("td");
    for(var i=0;i<b.length;i++)
    {
    var c=b[i].innerText;
    alert(c);
    }
    获取全部td的内容输出循环出来就可以

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题