正則表達

清代公文一大特點是引錄來文,層層叠加。引錄之後又往往用”等因” “等情” “等由” “等語” 字眼,不同字眼反映來文是上行平行還是下行;”等因”之後往往加上自己的官位,例如是 “道” “縣” “廳” 等,例如 “等情到府” “等因到縣”之類。

用一般搜尋方法,可以搜 “等”及”到”字,但只要該段文字中有 “等” 字 及 “到” 字,不論是否隔開數句數段,都會視作搜尋結果,於是會搜到很多無關的東西。如果只想在一句之中找到 “等”X”到”Y,一般方法並不可行。例如我現在用的搜尋方法及結果,結果並非我想要的。

我知道有正則表達 Regular Expression 這方法,可以加入很多條件作精準搜尋,但原來我自建的資料庫是可以用的,今天花了很長時間修訂原有的檢索系統,加入用正則表達來寫的檢索條件,讓搜尋結果更精確些。但正則表達有很多符號,難學。我想起了 Monica, 就是我常用來寫程式的 AI 助手,我把要求給她,她就能用正則表達寫出來。以下就是在一句之中搜 等X到X 的正則表達式:

[^\s.,;!?,。;!?]*等[^\s.,;!?,。;!?]{1}[^\s.,;!?,。;!?]*到[^\s.,;!?,。;!?]+:

Monica 還給我解釋 Matches a sequence where “等” is followed by exactly one character, then “到,” and then at least one more character.
這就是我想找的東西。一鍵索得,喜不自勝。Thanks, thanks, thanks, thanks. Monica~