2011-03-03 67 views
2

我正在處理一個包含羅馬字符和亞洲字符的文檔,並且我想將它們中的每一個單獨放在兩個分開的文件中並保持其原始結構,這有可能嗎?VIM:刪除非羅馬字符

謝謝

+0

什麼是您的文件編碼? – Benoit

+0

它用UTF-8編碼。 –

回答

0

在Python中可能更容易。這是一個腳本,它讀取一個文本文件並創建兩個輸出文件:一個使用低位ASCII,另一個使用其他所有文件。如果您在Vim中編譯了Python支持,則以下內容也應該可以在Vim中使用(只需很少的更改)。

import codecs 

mixedInput = codecs.open('mixed.txt', 'r', 'utf-8') 
lowAsciiOutput = codecs.open('lowAscii.txt', 'w', 'utf-8') 
otherOutput = codecs.open('other.txt', 'w', 'utf-8') 

for rawline in mixedInput: 
    line = rawline.rstrip() 
    for c in line: 
     if ord(c) < 2**7: 
      lowAsciiOutput.write(c) 
     else: 
      otherOutput.write(c) 
    otherOutput.write('\n') 
    lowAsciiOutput.write('\n') 

mixedInput.close() 
lowAsciiOutput.close() 
otherOutput.close() 

例如輸入文件(mixed.txt):

歡迎來到Mifos管理區域 

這是否你想要做什麼?

另存爲主要內容:https://gist.github.com/855545

+0

非常感謝!這正是我想要的! –