從網上收集的文章大多有大量
多餘的空行,佔據了許多篇幅,如果需要列印就非常浪費紙張。想要
刪除這些空行,可是這些空行要麼不包含任何字元,要麼包含了許多
空格、製表符(tab)。如果文章比較長,那麼手工刪除空行就成為一件頗費精力的事情。難道就沒有別的
辦法?當然有!
我們可以借助文字編輯器軟體editplus、ultraedit
實現。editplus、ultraedit是常見的共享軟體,幾乎所有
介紹在editplus中的操作,再介紹ultraedit。
一、在editplus中刪除空行
啟動editplus,開啟待處理的檔案。需要
注意,必須是純文字檔案,如果是word文件,需要先貼上到純文字
檔案中。然後,步驟如下:
1.選擇「搜尋」選單的「替換」
命令,出現如圖所示的文字替換對話方塊。選中「正規表示式」核取方塊,表明我們要在
查詢、替換中使用正規表示式。然後,選中「全部替換範圍」中的「當前
操作,只要選中「所有開啟的檔案」)。
從網上收集的文章大多有大量
多餘的空行,佔據了許多篇幅,如果需要列印就非常浪費紙張。想要
刪除這些空行,可是這些空行要麼不包含任何字元,要麼包含了許多
空格、製表符(tab)。如果文章比較長,那麼手工刪除空行就成為一件頗費精力的事情。難道就沒有別的
辦法?當然有!
我們可以借助文字編輯器軟體editplus、ultraedit
實現。editplus、ultraedit是常見的共享軟體,幾乎所有
介紹在editplus中的操作,再介紹ultraedit。
一、在editplus中刪除空行
啟動editplus,開啟待處理的檔案。需要
注意,必須是純文字檔案,如果是word文件,需要先貼上到純文字
檔案中。然後,步驟如下:
1.選擇「搜尋」選單的「替換」
命令,出現如圖所示的文字替換對話方塊。選中「正規表示式」核取方塊,表明我們要在
查詢、替換中使用正規表示式。然後,選中「全部替換範圍」中的「當前
操作,只要選中「所有開啟的檔案」)。
2.單擊「
查詢內容」組合框右側的按鈕 ,出現下拉列表,如下圖所示。選單
空格符、製表符、回車符,且必須以這三個符號之一作為一行的開頭,並且以回車符結尾,查詢空行的關鍵是構造代表空行的
正規表示式)。
(1)選擇「行首」,則查詢內容組合框中出現
字元「^」,表示待查詢的字串必須出現在文字中一行的行首,才符合
條件。
(2)選擇「範圍內的字元」,「^」後增加一對括號「」,當前
插入點在括號中。括號在正規表示式中表示,文字中的字元匹配括號中任意乙個
字元即符合查詢條件。
(3)按一下空格鍵,新增空格符。
空格符是空行的乙個組成成分。
(4)選擇「製表符」,
新增代表製表符的「\t」。
(5)移動游標,將當前插入點移到「]」之後,然後選擇「0或多次匹配」,新增了星號字元「*」。星號表示,其前面的括號「」內的空格符或製表符,在一行中出現0個或多個。
(6)選擇「換行」,插入「\n」,表示回車符。
至此,正規表示式構造成功(如下圖)。
3.替換內容組合框保持空,表示刪除查詢到的內容。單擊「替換」按鈕逐個行刪除空行,或單擊「全部替換」按鈕刪除全部空行(注意:editplus和ultraedit均存在全部替換不能一次性完全刪除空行的問題,可能是程式bug,需要多按幾次按鈕)。
對於熟悉editplus的朋友,可以直接在find what中輸入正規表示式^[ \t]*\n ,注意\t前有空格符。
二、在ultraedit中刪除空行
使用ultraedit的原理一樣,但是ultraedit沒有提供選單方式,所以需要手工輸入正規表示式,而且ultraedit的正規表示式符號與editplus不同。
用ultraedit開啟檔案後,選擇search選單的replace命令。在replace對話方塊中,選中regular expression核取方塊,並在find what中輸入:%[ ^t]++^p,注意^t之前有空格。該表示式字元含義與editplus的相對應。然後,單擊start或replace all按鈕,進行替換刪除空行。
2.單擊「
查詢內容」組合框右側的按鈕 ,出現下拉列表,如下圖所示。選單
空格符、製表符、回車符,且必須以這三個符號之一作為一行的開頭,並且以回車符結尾,查詢空行的關鍵是構造代表空行的
正規表示式)。
(1)選擇「行首」,則查詢內容組合框中出現
字元「^」,表示待查詢的字串必須出現在文字中一行的行首,才符合
條件。
(2)選擇「範圍內的字元」,「^」後增加一對括號「」,當前
插入點在括號中。括號在正規表示式中表示,文字中的字元匹配括號中任意乙個
字元即符合查詢條件。
(3)按一下空格鍵,新增空格符。
空格符是空行的乙個組成成分。
(4)選擇「製表符」,
新增代表製表符的「\t」。
(5)移動游標,將當前插入點移到「]」之後,然後選擇「0或多次匹配」,新增了星號字元「*」。星號表示,其前面的括號「」內的空格符或製表符,在一行中出現0個或多個。
(6)選擇「換行」,插入「\n」,表示回車符。
至此,正規表示式構造成功(如下圖)。
3.替換內容組合框保持空,表示刪除查詢到的內容。單擊「替換」按鈕逐個行刪除空行,或單擊「全部替換」按鈕刪除全部空行(注意:editplus和ultraedit均存在全部替換不能一次性完全刪除空行的問題,可能是程式bug,需要多按幾次按鈕)。
對於熟悉editplus的朋友,可以直接在find what中輸入正規表示式^[ \t]*\n ,注意\t前有空格符。
二、在ultraedit中刪除空行
使用ultraedit的原理一樣,但是ultraedit沒有提供選單方式,所以需要手工輸入正規表示式,而且ultraedit的正規表示式符號與editplus不同。
用ultraedit開啟檔案後,選擇search選單的replace命令。在replace對話方塊中,選中regular expression核取方塊,並在find what中輸入:%[ ^t]++^p,注意^t之前有空格。該表示式字元含義與editplus的相對應。然後,單擊start或replace all按鈕,進行替換刪除空行。
多文件模板建立後是否需要刪除???
我在dll中宣告了乙個建立模板的函式,然後返回模板指標 儲存在 mdi 主程式中 如dll中匯出函式 宣告如下 extern c declspec dllexport cmultidoctemplate dlldoctemplate return ptemplate cmultidoctemplat...
多文件問題
1.是多文件工程。2.在cmainfram.h新增cdialogbar m wndmydialogbar 3.在cmainfram.cpp oncreat中 if m wndmydialogbar.create this,idd dialog1,這個是對話方塊的id,對話方塊沒有建立類,應該不用吧?...
EditPlus刪除空行 空段落的正規表示式
遇到乙個比較大的文字檔案需要去除空行,首先想到的自然是正規表示式。偷懶去網上找了幾個刪除空行的正規表示式,填到editplus裡居然都不能用.而且大多數的正規表示式都用到了 r 也就是回車符,關於 n 和 r 的區別我以後再寫,今天只是為了記錄乙個正規表示式。t n 解釋一下 1 表示一行的開頭。空...