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

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

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

    zhyiwww
    用平實的筆,記錄編程路上的點點滴滴………
    posts - 536,comments - 394,trackbacks - 0

    我們的目標是要刪除文本中的空行,可能一行也可能是多行。
    所以,我的操作如下:
    reg3.PNG
    在此,我們匹配空行用的是
    (\r\n)*
    這樣,就可以匹配多個空行,同時用null來替代,就可以實現刪除空行。此方案是基于對\r和\n的使用。

    以前在網上看到一種實現是:
    \n[\s| ]*\r
    匹配之后,用null替代,也可以實現刪除空行,效果如下圖:
    reg4.PNG
    兩種方案都能實現相同的效果。

    如果有其他的不同理解,請發表評論,大家共同進步。

    我又做了以下測試,如下圖:
    reg5.PNG
    僅用了
    \n\r
    就完全實現了刪除所有的空行,因為在每一個空行的開頭和結尾都是
    \n\r
    所以,刪除了上一行之后,當前行還有一個\n\r,同樣能夠匹配上,所以,還要在做替代操作。這樣,就可以刪除所有的空行了。
    那,如果是
    \r\n,效果如何呢?
    我又做了一下測試,效果如下圖:
    reg6.PNG
    這個就不是我們想要的結果.為什么呢?
    我想,我們可以這樣理解,
    C:\Program Files\Common Files\Relive.dll?

    C:\Program Files\Common Files\svchost.exe

    C:\Program Files\Internet Explorer\msvcrt.bak
    C:\Program Files\Internet Explorer\msvcrt.dll

    C:\Program Files\Internet Explorer\msvcrt.ebk

    ?

    C:\WINNT\system32\drivers\npf.sys
    C:\WINNT\system32\wpcap.dll
    C:\WINNT\system32\Packet.dll
    C:\WINNT\system32\WanPacket.dll

    C:\Documents and Settings\User name\Local Settings\Temp\wmso.exe
    C:\Documents and Settings\User name\Local Settings\Temp\BCG5.tmp

    這個是原始文本,其實,在我們進行文本處理的時候,我們可以這樣把空行,用
    \r\n(回車換行,先回車,后換行)
    來替換掉.文本就是:
    C:\Program Files\Common Files\Relive.dll\r\n\r\nC:\Program Files\Common Files\svchost.exe\r\n\r\nC:\Program Files\Internet Explorer\msvcrt.bak\r\nC:\Program Files\Internet Explorer\msvcrt.dll\r\n\nC:\Program Files\Internet Explorer\msvcrt.ebk\r\n\r\n\r\n\r\nC:\WINNT\system32\drivers\npf.sys\r\nC:\WINNT\system32\wpcap.dll\r\nC:\WINNT\system32\Packet.dll\r\nC:\WINNT\system32\WanPacket.dll\r\n\r\nC:\Documents and Settings\User name\Local Settings\Temp\wmso.exe\r\nC:\Documents and Settings\User name\Local Settings\Temp\BCG5.tmp\r\n\r\n\r\n

    這一段文本是一個整體,沒有回車,沒有空隙和間隔,這是我們正在處理的文本,只不過回車換行是不可見字符,所以就不能看到,但是還是存在的.
    所以,在處理的時候才會出現我們上面的情況.
    有此,我們可以理解為什么
    用\r\n匹配和替代后,
    所有的\r\n都沒有了,所以,文本,就成為了一個連接的純字符文本了.
    但是
    \n\r
    替換后,
    中間的所有的\n\r都替代掉了,\r(\n\r……\n\r)\n,中間的部分都替代掉了。所以就剩最后的一個\r\n.

    以上是我的一點理解。



    |----------------------------------------------------------------------------------------|
                               版權聲明  版權所有 @zhyiwww
                引用請注明來源 http://m.tkk7.com/zhyiwww   
    |----------------------------------------------------------------------------------------|
    posted on 2007-09-18 10:26 zhyiwww 閱讀(27356) 評論(11)  編輯  收藏 所屬分類: 正則表達式

    FeedBack:
    # re: 正則表達式刪除空行
    2008-10-01 14:10 | lanmuz
    {因為在每一個空行的開頭和結尾都是。。。}

    高明,可見作者其理解之 深,思維之巧。
    妙哉  回復  更多評論
      
    # re: 正則表達式刪除空行
    2009-05-07 17:36 | 22
    你這是什么正則,用在js上不靈光的  回復  更多評論
      
    # re: 正則表達式刪除空行
    2010-05-09 21:13 | 牙牙學語
    謝謝你的文章,受教啦
    我用RegexBuddy測過了,無論Javascript還是Java語言,\n\r都可以去除純粹的空行,即一行中從行頭到行尾只有\n\r(不包含空格和制表位這樣的空白位)。
    對于含有空格或制表位的“空”行,\n[\s| ]*\r可以全部去除。  回復  更多評論
      
    # re: 正則表達式刪除空行[未登錄]
    2010-06-24 12:11 | test
    你的方法很明顯不對, 不知道你怎么測試的。。  回復  更多評論
      
    # re: 正則表達式刪除空行
    2011-08-03 09:02 | ethanq
    如果只是刪除空行,而不刪除下一行前邊的空格,還保持原格式,只是刪除其中的空行,不讓都左對齊。我記得好像有個[],有個做的到。  回復  更多評論
      
    # re: 正則表達式刪除空行[未登錄]
    2011-08-16 16:31 | bob
    javascript可以通過。

    程序沒有問題  回復  更多評論
      
    # re: 正則表達式刪除空行
    2012-02-22 23:48 |
    看君一帖勝讀好多天的書啊,謝謝。  回復  更多評論
      
    # re: 正則表達式刪除空行[未登錄]
    2013-04-15 16:27 | 劉偉
    不錯!支持了  回復  更多評論
      
    # re: 正則表達式刪除空行
    2013-06-08 16:36 | QQ46984344
    我想知道怎么用這個工具寫個正則表達式來刪除文本里邊的漢字和特殊符號 只保留英文字母  回復  更多評論
      
    # re: 我的經驗正則表達式刪除空行[未登錄]
    2015-01-28 10:29 | john
    我正在匹配的空行用網上各種方法仍然不行,可能含有特殊字符,只好自己想,用下列方法可以匹配任意特殊看不到文字的空行(^\s*|\s*|\s*$),不敢自己享用,與大家分享  回復  更多評論
      
    # re: 正則表達式刪除空行
    2015-04-23 20:31 | softy
    不管是\n\r 還是 \n[\s| ]*\r,都無法刪除文件開始的空行,算個bug吧  回復  更多評論
      
    主站蜘蛛池模板: 久久亚洲精品视频| 亚洲高清国产拍精品26U| 亚洲久悠悠色悠在线播放| **真实毛片免费观看| 亚洲高清无在码在线电影不卡| 日本在线免费观看| 91情国产l精品国产亚洲区| 99精品视频在线观看免费专区 | 国产亚洲精品无码拍拍拍色欲| 色网站在线免费观看| 亚洲精品无码AV中文字幕电影网站| 老牛精品亚洲成av人片| 亚洲精品成人久久久| 和老外3p爽粗大免费视频| 亚洲av无码一区二区乱子伦as| 最近免费中文字幕大全高清大全1| 久久精品国产亚洲av日韩| 1024免费福利永久观看网站| 亚洲人成自拍网站在线观看| 国产成人免费a在线资源| ssswww日本免费网站片| 亚洲一区二区三区高清| 91免费国产在线观看| 男男gvh肉在线观看免费| 国产亚洲一区二区手机在线观看 | 2020亚洲男人天堂精品| 福利片免费一区二区三区| 亚洲成人高清在线| 国产日韩精品无码区免费专区国产 | 久久久久亚洲av无码专区导航| 可以免费看的卡一卡二| 免费在线观看一区| 亚洲综合精品一二三区在线| 欧美大尺寸SUV免费| 四虎影视久久久免费观看| 亚洲AV日韩AV鸥美在线观看| 成年男女男精品免费视频网站 | 亚洲av无码一区二区三区乱子伦| 欧美日韩国产免费一区二区三区| 国产精品综合专区中文字幕免费播放| 亚洲天堂在线播放|