2011-10-04 77 views
1

我有一些Word文檔,我想從中刪除一些元素。我想這樣做如下:MS Word文檔:使用Shell腳本自動查找/替換

  1. 複製並粘貼到Word文件的全部內容(可能沒有必要),並將其移動到一個文本文件或轉換.DOC爲.txt
  2. 使用正則表達式:用「」替換\[.*\]並用「」替換\(.*\)用「」
  3. 將結果保存爲與原始單詞文檔具有相同名稱的文本文件。

思考和指導表示讚賞。就目前而言,我不知道如何以編程方式完成這些任務。我正在手動進行此操作。

如果它的事項,我使用Ubuntu 11.04

回答

2

既然你打開使用純文本,你的算法中的一些改進:

  1. 使用antiword自動從文檔轉換爲TX
  2. 使用sed做到就地正則表達式修改:sed -i -e's/bad/good/' file.txt

更新(在響應評論):

的正則表達式都很好,但我不完全理解的目的:如果你要替換[富] &(富)的出現

  • 「 「使用:

    sed -i -e's/\[.*\]/""/g' file.txt; sed -i -e's/\(.*\)/""/g' file.txt

  • ,如果你要替換出現[富] &(富)

    」FOO「 每次使用:

    sed -i -e's/\[\(.*\)\]/"\1"/g' file.txt; sed -i -e's/(\(.*\))/"\1"/g' file.txt

+0

第1部分沒有問題。但我完全不熟悉sed。你能用一個使用我的正則表達式調用的例子來更新你的答案,這樣我就可以看到語法了嗎? –

+0

更新的答案,因爲我需要更多的空間 – jman

+0

我的歉意,我應該更加明確我的用法。基本上,我想刪除包含在(...)或[...]中的文檔中的任何內容和所有內容,包括括號。 –

相關問題