我从数据库中拿出一个值,值为:"<td>中国汽贸</td><td>我们公司成立于</td>"我要在CS代码中做处理,判断字符长度大于20就截取20的长度,后面加上但是这个值HTML代码,截取时连HTML代码也算在内了,截出的数据不对请问怎么样能把HTML代码全部去除掉,只截HTML代码内的数据的长度?

解决方案 »

  1.   

    切字不要在代码里面写不利于搜索引擎搜索
    用样式切
    width:120px; 表示了要显示的字符串物理宽度,单位px
    white-space:nowrap; 表示不允许换行
    overflow:hidden; 表示超出120px的字符不显示
    text-overflow:ellipsis; 表示期于字符用…代替
      

  2.   

    使用正则过滤掉html码,然后截取。
    html正则表达式:
    (<\/?)(?i:(?<element>a(bbr|cronym|ddress|pplet|rea)?|b(ase(font)?|do|ig|lockquote|ody|r|utton)?|c(aption|enter|ite|(o(de|l(group)?)))|d(d|el|fn|i(r|v)|l|t)|em|f(ieldset|o(nt|rm)|rame(set)?)|h([1-6]|ead|r|tml)|i(frame|mg|n(put|s)|sindex)?|kbd|l(abel|egend|i(nk)?)|m(ap|e(nu|ta))|no(frames|script)|o(bject|l|pt(group|ion))|p(aram|re)?|q|s(amp|cript|elect|mall|pan|t(r(ike|ong)|yle)|u(b|p))|t(able|body|d|extarea|foot|h|itle|r|t)|u(l)?|var))(\s(?<attr>.+?))*>|[a-zA-z]+://[^\s]*PS:1楼说的没错,你过滤掉html后最后用css来控制输出。当然若需求不允许这样,你可以采用截取方式。
      

  3.   

    非要在CS里判断的话用string.replace("<td>","");
    string.replace("</td>","")
    再截取字符串就不包含html标签了