Quantcast
Channel: 簡睿隨筆
Viewing all articles
Browse latest Browse all 897

用正則運算式轉換固定格式的編碼—使用EmEditor (Regular expression#01)

$
0
0

Regular Expression是一個非常簡便但又很強大的運算表示式,了解它的基本邏輯後,具有一定規則的文字內容就很容易的能操作處理,而不需要撰寫程式。以下是一個輸入法1碼表的轉換範例,將左側的RIME格式轉換成小小輸入法的碼表格式,再轉換成小鶴雙拚格式。

[!info] 提示
EmEditor 規則運算式語言基于 Perl 規則運算式語法。

▼ 中文 (TAB) 小鶴兩碼+倉頡首尾碼
![gh](https://raw.githubusercontent.com/emisjerry/upgit/master/2024/1730605132000at177r.png)

▼ 小鶴兩碼+倉頡首尾碼 (空白) 中文
![gh](https://raw.githubusercontent.com/emisjerry/upgit/master/2024/1730605151000zb8ixn.png)

▼ 小鶴兩碼 (空白) 中文
![gh](https://raw.githubusercontent.com/emisjerry/upgit/master/2024/17306051660009h5zd4.png)

1. 用 . 表示一個字元

  • 原始內容:簡 jmha

  • 中間的Tab (ASCII 9)可以用 \t代表

  • 一個字元用 . 代表,再用()有夾住,表示是第一組字元

  • 最後面的 jmha可以用 .+ 表示1或多個字元,再用()有夾住,表示是第二組字元

  • 替換後的結果是第二組字元在前,第一組字在後,用$2 $1表示

  • 來源的正則運算式:(.)\t(.+)

  • 取代為運算式:$2 $1
    gh

▼ 取代後
gh

2. 取開頭兩個字元

  • 最開頭的4個字元用4個 . 代表, 再用()夾住以形成 4 群字元,取代後要開頭兩個字元即為$1$2
  • 最後面用 .+ 表示一個或多個字元,「取代為」以$5代表
  • 最後的結果是 $1$2 $5

    gh

3. 💡 相關鏈接

💡 解說文章:
✅範例編碼檔: https://github.com/JeffChien/rime-flypyquick5/blob/main/flypy_quick5_main.dict.yaml
✅EmEditor規則運算式說明: https://www.emeditor.org/zh-tw/howto/search/search_regexp_syntax.html

4. 教學影片

##

您可能也會有興趣的類似文章


Viewing all articles
Browse latest Browse all 897

Trending Articles