漂浮著 \d、\d+、\d{4}、^、$ 等正規表示式符號的示意圖

現在,只要把需求告訴 AI,簡單的巨集或小型程式往往很快就能完成。我自己也幾乎不再從頭撰寫程式碼了。

不過,有一項工具直到現在,我仍然經常親自使用。

那就是正規表示式

過去為了提升翻譯與 QA 作業的效率,我曾自行摸索 Word VBA、秀丸(Hidemaru)巨集以及各種程式語言,也寫過不少用來簡化工作的巨集和小工具。

開始使用 memoQ 之後,需要自己撰寫巨集的機會少了很多。不過,在 memoQ 之外進行某些作業時,過去累積下來的一些巨集至今仍然派得上用場。

近年 AI agent 與 vibe coding(透過自然語言指示 AI 撰寫程式碼的開發方式)逐漸普及,需要親自寫程式碼的情況又更少了。

即使如此,正規表示式依然沒有退場。

網路上介紹正規表示式的文章已經非常多。本系列並不打算再做一本完整的語法手冊,而是希望從最基礎的概念開始,慢慢介紹正規表示式在翻譯與 QA 實務中有哪些好用之處。

什麼是正規表示式?

簡單來說,正規表示式就是「用文字的規律或模式來搜尋內容的方法」。

一般的搜尋,是找出與輸入內容相同的文字。

例如搜尋「2026年」,就會找到「2026年」。

正規表示式則可以不指定某一組固定文字,而是指定像「4 個數字+年」這樣的模式

如此一來,不只是「2026年」,連「2027年」、「1900年」等符合相同模式的文字,都可以一次找出來。

這就是正規表示式最基本的概念。

正規表示式與字串的對應關係

圖 1 一般搜尋與正規表示式搜尋的差異,以及 \d{4}年 與字串之間的對應關係。

從最基礎開始──先認識這 4 個表示式

正規表示式裡有許多特殊符號。

第一次看到時,可能會覺得有點像密碼。不過,並不需要一開始就把所有寫法全部背下來。實際使用時,經常出現的表示式其實沒有想像中那麼多。

先從下面 4 個開始即可。

表示式意義
\d1 個數字
+前一個字元或表示式重複 1 次以上
{4}前一個字元或表示式剛好重複 4 次
.換行以外的任意 1 個字元

\d──1 個數字

首先,

\d

代表 1 個數字。

例如「1」、「5」、「9」這些數字都可以被搜尋到。

+──重複 1 次以上

接著,在 \d 後面加上 +

\d+

意思就變成「連續出現 1 個以上的數字」。

因此,下面這些內容都能找到:

  • 3
  • 2026
  • 10000

這裡真正重要的,不是把 \d+ 當成一整串符號背起來。

\d 是「1 個數字」,+ 是「前面的表示式重複 1 次以上」。把兩者組合起來,就成了「1 個以上連續出現的數字」。

正規表示式其實就是這樣,把一個個小零件組合起來使用

{4}──剛好重複 4 次

這次在 \d 後面加上 {4}

\d{4}

意思是「剛好有 4 個數字連續出現」。

例如:

2026

1900

都符合這個模式。

正規表示式後面也可以直接接一般文字。

例如:

\d{4}年

就可以找到:

  • 1900年
  • 2026年
  • 2027年

這時搜尋的已經不是「2026年」這一組固定文字,而是「4 個數字後面接著『年』的字串」。

.──任意 1 個字元

. 代表換行以外的任意 1 個字元。

例如:

第.章

可以找到:

  • 第1章
  • 第2章
  • 第一章

因為「第」與「章」之間,都剛好有 1 個字元。

這個表示式非常方便,但因為範圍很廣,也比較容易搜尋到原本沒有預期的內容。實際使用時,最好一邊確認搜尋結果一邊使用。

正規表示式不是拿來「死背」的

看到這裡,正規表示式可能還是有點像一堆特殊符號。

不過,完全不需要從一開始就把複雜的表示式整串背起來。

例如:

\d{4}年

其實只是由 3 個部分組合而成:

  • \d = 1 個數字
  • {4} = 剛好重複 4 次
  • = 文字「年」

合起來就是:

4 個數字+年

先想清楚自己想找的是什麼,再把它拆成幾個小部分,最後將對應的表示式組合起來。

掌握這個思考方式之後,正規表示式其實沒有表面上看起來那麼難。

尤其是翻譯與 QA 這類每天需要處理大量文字的工作,只要懂得一些基本寫法,就能在不少地方省下時間。

下一篇預告

這一篇先從最基本的地方開始,介紹了正規表示式的概念和幾個簡單的表示式。

下一篇,我們來看一個更接近實務的例子。

例如:

  • 2026年9月1日
  • 2025年12月31日
  • 1999年1月10日

這些日期的年、月、日都不相同。

如果不想一個日期一個日期分別搜尋,要如何用一個正規表示式一次把它們全部找出來呢?

下一篇會在這次介紹的內容上,再加入少量新的寫法,一步一步組合出可以搜尋日期的正規表示式。

再下一篇,則會進一步把搜尋到的日期改成其他格式,例如:

2026年9月1日9/1/2026

這類美國常見的「月/日/年」格式,或:

2026年9月1日1/9/2026

這類歐洲常見的「日/月/年」格式。

先學會「搜尋」,再進一步學「取代」。

我們會一次增加一點點,慢慢把正規表示式可以做到的事情擴展開來。