如何從 Notepad++ 檔案中刪除列

如何從 Notepad++ 檔案中刪除列

我想在記事本++中刪除txt檔案中間的一列。文件的長度約為 50K+ 行,因此我寧願不必在遊標緩慢線性地穿過行時按住某個鍵。

答案1

嘗試:

Alt + Shift + 左鍵單擊

它應該繪製一個選擇矩形,可能適合你。

答案2

我假設你有 Notepad++TextFX v0.26 插件安裝後,您在取代對話方塊中選擇「正規表示式」。

如果您的資料是以下格式

col1 col2 col3 col4
col1 col2 col3 col4
col1 col2 col3 col4
col1 col2 col3 col4

其中列沒有空格並且由一個空格分隔,然後,假設您要刪除第三列:您可以搜尋(.*?) (.*?) (?:.*?)( .*)並替換為$1 $2$3(需要空格)以獲取

col1 col2 col4
col1 col2 col4
col1 col2 col4
col1 col2 col4

正規表示式101.com搜尋正規表示式的解釋比我更簡潔:

/(.*?) (.*?) (?:.*?)( .*)/
    1st Capturing group (.*?)
        .*? matches any character (except newline)
            Quantifier: *? Between zero and unlimited times, as few times as possible, expanding as needed [lazy]
     matches the character  literally
    2nd Capturing group (.*?)
        .*? matches any character (except newline)
            Quantifier: *? Between zero and unlimited times, as few times as possible, expanding as needed [lazy]
     matches the character  literally
    (?:.*?) Non-capturing group
        .*? matches any character (except newline)
            Quantifier: *? Between zero and unlimited times, as few times as possible, expanding as needed [lazy]
    3rd Capturing group ( .*)
         matches the character  literally
        .* matches any character (except newline)
            Quantifier: * Between zero and unlimited times, as many times as possible, giving back as needed [greedy]

其他正規表示式也可以達到相同的結果。

如果您的列具有固定寬度(並包含空格)或由不同的字元分隔,那麼您將必須修改搜尋表達式和替換,但如果沒有範例資料和所需的結果,我無法給出確切的答案。

答案3

我不相信有一種方法可以在 Notepad++ 中執行此操作而不下載/安裝插件。如果您的文件是分隔的,也許您可以將其載入到 Excel 或類似軟體中並以這種方式刪除該列?

編輯:我只是想到了一個有趣的解決方案。您可以變更 Windows 或任何作業系統中的行捲動速度,重新啟動 Notepad++,然後捲動滑鼠或使用箭頭鍵。我不知道這會帶來多大的改變,但也許值得一試。

答案4

您可以在 Notepad ++ 中以列模式工作。此選項位於「編輯」功能表中 - 按一下它將提示您使用正確的鍵盤快捷鍵。我按住 Alt 鍵,然後選擇要刪除/編輯的資料。

相關內容