<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    葉明的javablog

    java學習天堂,個人關于其他blog:blog.javaworker.cn,歡迎大家訪問
    posts - 64, comments - 50, trackbacks - 0, articles - 3

    今天在解析html時間,在調用頁面頁面中替換鏈接時間發生沒有錯誤,程序執行的該步驟,但是就是沒有將我要求替換的內容給替換掉。

    這個是需要替換的內容<a href=../../08/19/10483.html>下一篇: PHP+MySQL應用中使用XOR運算加密算法</a>

    不知道是什么原因,replassall竟然不能替換,是找不到源里的數據,還是其他有問題呢?其他頁面都能替換掉,就是有1-2個頁面不能替換,郁悶。是不是字符編碼的問題?有誰知道嗎?請賜教


    我使用indexof("")時間發現里邊確實存在。該內容,,我需要替換的字符就是‘<a href=../../08/19/10483.html>下一篇: PHP+MySQL應用中使用XOR運算加密算法</a>’,難道是‘../’的問題

    以前使用split拆分的時間發現‘.’有時間是失靈的,這個應該是關鍵標示的原因,但是這個replaceall竟然也不能,其他鏈接和該鏈接是一致的,替換的只是名稱和地址,其他都是一樣的

    Feedback

    # re: 郁悶的問題。關于String中replaceAll方法   回復  更多評論   

    2007-09-15 09:09 by BeanSoft
    replaceAll 參數是正則表達式, 不是普通的字符串. 看看有沒有不符合要求的字符串.

    # re: 郁悶的問題。關于String中replaceAll方法   回復  更多評論   

    2007-09-15 09:22 by 千里冰封
    樓上說的有道理,特別是.它在正則表達式里面有特殊的含 義

    # re: 郁悶的問題。關于String中replaceAll方法   回復  更多評論   

    2007-09-15 09:31 by lovajava_ye
    實際上要求替換的字符就是‘<a href=../../08/19/10483.html>下一篇: PHP+MySQL應用中使用XOR運算加密算法</a>’這個字符串,我看了,doc上說‘\’和‘$’符號這個要注冊,我這個里邊沒有這些字符啊

    # re: 郁悶的問題。關于String中replaceAll方法   回復  更多評論   

    2007-09-15 09:55 by BeanSoft
    最好還是用我們自己實現的替換字符串的方法來做(JDK 1.4 之前找的代碼):

    // ------------------------------------ 字符串處理方法
    // ----------------------------------------------

    /**
    * 將字符串 source 中的 oldStr 替換為 newStr, 并以大小寫敏感方式進行查找
    *
    * @param source
    * 需要替換的源字符串
    * @param oldStr
    * 需要被替換的老字符串
    * @param newStr
    * 替換為的新字符串
    */
    public static String replace(String source, String oldStr, String newStr) {
    return replace(source, oldStr, newStr, true);
    }

    /**
    * 將字符串 source 中的 oldStr 替換為 newStr, matchCase 為是否設置大小寫敏感查找
    *
    * @param source
    * 需要替換的源字符串
    * @param oldStr
    * 需要被替換的老字符串
    * @param newStr
    * 替換為的新字符串
    * @param matchCase
    * 是否需要按照大小寫敏感方式查找
    */
    public static String replace(String source, String oldStr, String newStr,
    boolean matchCase) {
    if (source == null) {
    return null;
    }
    // 首先檢查舊字符串是否存在, 不存在就不進行替換
    if (source.toLowerCase().indexOf(oldStr.toLowerCase()) == -1) {
    return source;
    }
    int findStartPos = 0;
    int a = 0;
    while (a > -1) {
    int b = 0;
    String str1, str2, str3, str4, strA, strB;
    str1 = source;
    str2 = str1.toLowerCase();
    str3 = oldStr;
    str4 = str3.toLowerCase();
    if (matchCase) {
    strA = str1;
    strB = str3;
    } else {
    strA = str2;
    strB = str4;
    }
    a = strA.indexOf(strB, findStartPos);
    if (a > -1) {
    b = oldStr.length();
    findStartPos = a + b;
    StringBuffer bbuf = new StringBuffer(source);
    source = bbuf.replace(a, a + b, newStr) + "";
    // 新的查找開始點位于替換后的字符串的結尾
    findStartPos = findStartPos + newStr.length() - b;
    }
    }
    return source;
    }

    # re: 郁悶的問題。關于String中replaceAll方法   回復  更多評論   

    2007-09-15 21:25 by DoubleHeart
    '.'這個也是正則里的特殊符號呀
    你最好去用Apache的Commons下的StringUtils.replace()。
    而不是用一些效率很低、實現也比較丑陋的私有實現方式。

    # re: 郁悶的問題。關于String中replaceAll方法   回復  更多評論   

    2007-09-15 22:05 by BeanSoft
    找找資料把 '.' 轉義了就好.

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 久久夜色精品国产噜噜亚洲AV| 亚洲男人天堂2020| 一区二区三区亚洲| 小草在线看片免费人成视久网| 亚洲精品国产成人片| 久久国产精品免费观看| 亚洲第一区香蕉_国产a| 免费能直接在线观看黄的视频 | 亚洲精品国产综合久久久久紧| 99精品全国免费观看视频 | aa级女人大片喷水视频免费| 国产精品亚洲不卡一区二区三区 | 免费观看四虎精品国产永久| 国产精品亚洲av色欲三区| 免费一看一级毛片全播放| 一级一级一级毛片免费毛片| 狠狠色伊人亚洲综合成人| 无码人妻一区二区三区免费看 | 亚洲精品中文字幕无乱码| 久久久久免费看黄A片APP| 国产AV日韩A∨亚洲AV电影| 亚洲综合无码精品一区二区三区| 在线人成免费视频69国产| 亚洲一区二区久久| 国产精品无码一二区免费| 又长又大又粗又硬3p免费视频| 亚洲中久无码永久在线观看同| va亚洲va日韩不卡在线观看| 一级白嫩美女毛片免费| 亚洲无删减国产精品一区| 欧美三级在线电影免费| 精品在线视频免费| 久久亚洲美女精品国产精品 | 亚洲视频中文字幕| 成人免费午间影院在线观看| 一级黄色免费大片| 亚洲第一香蕉视频| 亚洲国产成人久久一区久久| 57pao一国产成永久免费| 自拍偷自拍亚洲精品播放| 久久亚洲国产伦理|