各位高手:
        我通过读流的办法,读取了一个页面的内容,但是我要对这个页面进行处理?要把一些连接替换成一个固定的字符串 可是每个连接的都是不一样的,唯一一样的就是都是以http://开始 结束后面是</a>. 我想到了用replaceAll()这个方法,可是我不会写正责表达式.或者有其他好办法也可以 希望大家帮助一下,谢谢了
    
     第2个问题也是在把流读出来的错误,错误的信息是 <div id=yschweb>这个标签 缺少"",我又要怎么给他加上去呀!!

解决方案 »

  1.   

    1 要把一些连接替换成一个固定的字符串一些是啥,给一些例子2 没看懂你要做啥!缺少标签,Html缺少就少了,不用管它。
    或者你替换为 <div id="yschweb"> 加上双引号
      

  2.   

     <div>
                              <a href="/search/click?query=601600+2008-01-02&amp;title=http%3A%2F%2Fwap.618618.cn%2Fportal%2Fstock%2Fwap12%2Fsalondetail.jsp%3FType%3DGP%26SalonID%3D12396%26PageID%3D1%26SURL%3D&amp;url=http%3A%2F%2Fwap.618618.cn%2Fportal%2Fstock%2Fwap12%2Fsalondetail.jsp%3FType%3DGP%26SalonID%3D12396%26PageID%3D1%26SURL%3D&amp;spaceId=Default&amp;index=Default&amp;charset=&amp;mimeType=text%2Fhtml" style="font-family: Arial; text-decoration: underline; color: #0000de; " class="yschttl">http://wap.618618.cn/portal/stock/wap12/salondetail.jsp?Type=GP&amp;SalonID=12396&amp;PageID=1&amp;SURL=</a></div><a href="/search/click?query=601600+2008-01-02&amp;title=http%3A%2F%2Fwap.618618.cn%2Fportal%2Fsalon%2Fwap12%2Fsalondetail.jsp%3FType%3DGP%26SalonID%3D12396%26PageID%3D1&amp;url=http%3A%2F%2Fwap.618618.cn%2Fportal%2Fsalon%2Fwap12%2Fsalondetail.jsp%3FType%3DGP%26SalonID%3D12396%26PageID%3D1&amp;spaceId=Default&amp;index=Default&amp;charset=&amp;mimeType=text%2Fhtml" style="font-family: Arial; text-decoration: underline; color: #0000de; " class="yschttl">http://wap.618618.cn/portal/salon/wap12/salondetail.jsp?Type=GP&amp;SalonID=12396&amp;PageID=1</a>这是两个例子 我想替换的是http://wap.618618.cn/portal/stock/wap12/salondetail.jsp?Type=GP&amp;SalonID=12396&amp;PageID=1&amp;SURL=
                        和http://wap.618618.cn/portal/salon/wap12/salondetail.jsp?Type=GP&amp;SalonID=12396&amp;PageID=1
      

  3.   

    <div   id=yschweb>这个可以加上""老紫竹一两句话应该就能搞定用replaceAll另外replaceAll这个方法本身就是正则表达式了,
      

  4.   


    String xx=" <div><a  sfsdf> http://wap.618618.cn/portal/stock/wap12/salondetail.jsp?Type=GP&amp;SalonID=12396&amp;PageID=1&amp;SURL= </a> </div> ";
    System.out.println(xx.replaceAll("<a(.+?)>(.+?)</a>", "<a$1>syj</a>"));不一定行我这方面比较菜,你多找几条数据试试
      

  5.   

        String str = "<div> <a   href=\"/search/click?query=601600+2008-01-02&amp;title=http%3A%2F%2Fwap.618618.cn%2Fportal%2Fstock%2Fwap12%2Fsalondetail.jsp%3FType%3DGP%26SalonID%3D12396%26PageID%3D1%26SURL%3D&amp;url=http%3A%2F%2Fwap.618618.cn%2Fportal%2Fstock%2Fwap12%2Fsalondetail.jsp%3FType%3DGP%26SalonID%3D12396%26PageID%3D1%26SURL%3D&amp;spaceId=Default&amp;index=Default&amp;charset=&amp;mimeType=text%2Fhtml\"   style=\"font-family:   Arial;   text-decoration:   underline;   color:   #0000de;   \"   class=\"yschttl\"> http://wap.618618.cn/portal/stock/wap12/salondetail.jsp?Type=GP&amp;SalonID=12396&amp;PageID=1&amp;SURL= </a> </div> <a   href=\"/search/click?query=601600+2008-01-02&amp;title=http%3A%2F%2Fwap.618618.cn%2Fportal%2Fsalon%2Fwap12%2Fsalondetail.jsp%3FType%3DGP%26SalonID%3D12396%26PageID%3D1&amp;url=http%3A%2F%2Fwap.618618.cn%2Fportal%2Fsalon%2Fwap12%2Fsalondetail.jsp%3FType%3DGP%26SalonID%3D12396%26PageID%3D1&amp;spaceId=Default&amp;index=Default&amp;charset=&amp;mimeType=text%2Fhtml\"   style=\"font-family:   Arial;   text-decoration:   underline;   color:   #0000de;   \"   class=\"yschttl\"> http://wap.618618.cn/portal/salon/wap12/salondetail.jsp?Type=GP&amp;SalonID=12396&amp;PageID=1 </a> ";
        String newStr = "http://www.java2000.net"; // 新的字符串
        System.out.println(str.replaceAll("(.*?)http://wap.618618.cn.*?</a>(.*?)", "$1"+newStr + "</a>$2"));
      

  6.   

        String newStr = "www.java2000.net";
        System.out.println(str.replaceAll("(.*?)wap.618618.cn.*?</a>(.*?)", "$1"+newStr + "</a>$2"));
      

  7.   

    这只是个连接 不一定都一样的,因为这些连接都是通过搜索出来的,但是固定的是他们以http://开始 结束的时候是</a> 这就是我找到的规律,如果写出正则 我是不会的 谢谢
      

  8.   

    str.replaceAll("(.*?)http://*?</a>(.*?)", "$1"+newStr + "</a>$2");
      

  9.   

    先谢谢各位! 有点不明白
      newStr应该是我要替换的那个字符串 那$1 和$2这两个参数是什么 应该怎么写 谢谢了
      

  10.   

    那我执行str.replaceAll("(.*?)http://*? </a> (.*?)",   "$1"+newStr   +   " </a> $2");这句话后 返回的结果并没有被替换
      

  11.   

    这里发帖总加入空格,导致代码错误
    str.replaceAll("(.*?)http://.*?</a>(.*?)", "$1"+newStr + "</a>$2");
      

  12.   

    可以了
         谢谢老紫竹和sunyujia  不厌其反的告诉我.    结贴 给分