日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

java正则表达式空行_正则表达式删除空行

發布時間:2025/3/20 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java正则表达式空行_正则表达式删除空行 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我們的目標是要刪除文本中的空行,可能一行也可能是多行。

所以,我的操作如下:

在此,我們匹配空行用的是

(\r\n)*

這樣,就可以匹配多個空行,同時用null來替代,就可以實現刪除空行。此方案是基于對\r和\n的使用。

以前在網上看到一種實現是:

\n[\s| ]*\r

匹配之后,用null替代,也可以實現刪除空行,效果如下圖:

兩種方案都能實現相同的效果。

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

我又做了以下測試,如下圖:

僅用了

\n\r

就完全實現了刪除所有的空行,因為在每一個空行的開頭和結尾都是

\n\r

所以,刪除了上一行之后,當前行還有一個\n\r,同樣能夠匹配上,所以,還要在做替代操作。這樣,就可以刪除所有的空行了。

那,如果是

\r\n,效果如何呢?

我又做了一下測試,效果如下圖:

這個就不是我們想要的結果.為什么呢?

我想,我們可以這樣理解,

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://www.blogjava.net/zhyiwww

|----------------------------------------------------------------------------------------|

posted on 2007-09-18 10:26 zhyiwww 閱讀(25948) 評論(11) ?編輯 ?收藏 所屬分類: 正則表達式

總結

以上是生活随笔為你收集整理的java正则表达式空行_正则表达式删除空行的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。