正則表達式:生成 + 逐段解釋
需要一個正則但不熟語法,或者看不懂別人寫的正則。
提示詞長度
161
tokens
建議模型
Flash
單次成本(離峰)
$0.00020
Flash
跑一萬次
$2.04
Flash 離峰
提示詞全文
幫我寫一個正則表達式。
需求:{{要匹配什麼}}
語言/環境:{{Python / JavaScript / Go / grep}}
範例(應該匹配):
{{範例1}}
{{範例2}}
反例(不該匹配):
{{反例1}}
輸出:
1. 正則本身
2. 逐段拆解解釋(每段說明匹配什麼)
3. 用我給的範例與反例跑一遍,說明結果
4. 已知的邊界情況(例如貪婪匹配、多行、Unicode)
5. 一個更寬鬆或更嚴格的替代版本
要求:
- 優先可讀性,能用簡單寫法就不要炫技
- 說明這個正則在什麼情況下會失效
為什麼這樣寫
- 要求「用範例與反例跑一遍」,能當場驗證正確性,而不是拿去試才發現錯。
- 要求逐段拆解,是因為正則最大的問題是三個月後自己也看不懂。
- 「什麼情況下會失效」是正則最容易忽略的部分 —— 邊界條件往往才是 bug 來源。
成本
按上面這段提示詞估算(輸入 161 tokens、輸出 300 tokens)。輸出長度依任務而定,實際會有差異。
| 模型 | 單次(高峰) | 單次(離峰) | 1 萬次(高峰) | 1 萬次(離峰) |
|---|---|---|---|---|
| DeepSeek Flash | $0.00041 | $0.00020 | $4.08 | $2.04 |
| DeepSeek V4 Pro | $0.00140 | $0.00070 | $14.01 | $7.00 |
模型建議:正則生成是明確的模式匹配任務,Flash 準確率已足夠。複雜的多層條件匹配再用 V4 Pro。
變體
- 要處理多行文本時,追加「說明是否需要開啟 DOTALL 或 MULTILINE 模式」。
- 性能敏感時,追加「分析是否存在災難性回溯風險」。
常見失敗
- 只給需求不給範例,生成的正則往往差一點點但一直對不上。
- 不指定語言,跳脫字元與命名分組的寫法會不同。