2018年1月12日 星期五

中文錯別字校對偵測小程式

因為工作性質,需要校對錯別字,因此就想找找有沒有能幫忙自動校對錯別字的程式。
做過一番研究後發現以下幾點:

  1. 中文和英文不同,英文字母可以拼字組合出一個完全錯誤的單字,但中文只要電腦能打出來的就不是錯字(頂多有異體字的問題),所以說能打出來的中文沒有拼字錯誤的錯字,而是別字問題,或者說「錯詞」,一個詞語的某些字用錯了。
  2. 中文有分詞斷詞判斷問題,因為中文字詞是相連的,不像英文有空白來區隔字詞,因此要判斷錯詞,通常需要先分詞。
  3. 目前簡體字比較有這類錯別字校對程式,如黑馬校對軟件,但無法適用於繁體字,且都不是完美方案,最後仍須人工檢查。
  4. 這是個難題,也是目前市面上相關程式很少的原因,而且都不能完美解決。

綜上所述,我了解到這暫時不是我能夠解決的問題。
但我在想不用完美解決,只要有改善、有輔助即可。
我不用每次能找出大部分錯字與高校對率。(這需要分詞與龐大的正確字詞庫)
我只要找出常見錯別字與我所定義的錯別字即可(不用分詞,只需要我定義的錯別字詞庫)

因此我寫了一個小程式,可以校對出自己定義的常見錯別字。

程式的概念很簡單,如下敘述:

  1. 將自己收集好的錯別字詞,寫入一個文件(txt檔),一行一個錯別字,並後續可再自行添加。
  2. 用程式查找要校對的文件(word檔),當內容有錯別字詞庫中的錯別字時,便會黃色高亮顯示。

使用過程如下:

  1. 下載此壓縮檔
  2. 解壓縮後有兩個檔案,一個是程式(查找特定錯字.exe),另一個是錯別字詞庫,取名為wdict.text,兩個需在同一層文件夾中。
  3. 點擊程式後,是DOS界面,有操作說明文字,依該說明使用即可。
  4. 會跳出word檔查找畫面,如果該word有錯別字詞庫的錯別字,即會高亮顯示,並在DOS視窗中顯示查找到幾個錯別字。



注意事項:

  1. 此小程式依賴微軟office的word,故須安裝word才能使用。
  2. 錯別字詞庫的檔名含附檔名為wdict.txt,不可更改。
  3. 此程式只高亮顯示錯別字,不直接更改(更改我也做得到,但中文字詞組合太多,直接改怕有改錯的情形)
  4. 錯別字詞庫可自行添加新錯別字詞,但第1行須保留。(此檔的編碼是UTF-8)



轉載請註明出處

4 則留言:

  1. 寫上要查找的word檔路徑,或將word檔拖入此黑色dos視窗中,
    顯示路徑後會出現[找到n個字],如果沒有出現,請再繼續按Enter鍵,
    文字游標要出現在下一行:C:\Users\4139\Downloads\XXXXX.doc
    Traceback (most recent call last):
    File "findwrong.py", line 21, in
    File "C:\Users\4139\AppData\Local\Temp\tmp0okto73r\gen_py\00020905-0000-0000-C000-000000000046x0x8x4\Documents.py", line 96, i
    , Visible, OpenAndRepair, DocumentDirection, NoEncodingDialog, XMLTransform
    pywintypes.com_error: (-2147352567, '發生例外狀況。', (0, 'Microsoft Word', 'Open 方法或內容無法使用,因為 此文件的權限目前已受限
    \\Microsoft Office 2007\\Office12\\1028\\WDMAIN11.CHM', 37373, -2146823683), None)
    Failed to execute script findwrong

    回覆刪除
  2. 謝謝您提供程式,但上面的問題不知道是否是word版本的問題?

    回覆刪除

LINE 聊天機器人快速實作

LINE 聊天機器人的基本實作教學文章,網路上很多,所以我不打算寫詳細的基礎教學步驟。 聊天機器人的實作,大致有三個階段: 回聲機器人。(你說什麼,他回什麼) 特定關鍵字回應。(設定一些關鍵字,回應除了定型內容外,還可用爬蟲技術爬出資料再回應) 智慧對話。(會自然語言...