| 場景 | Regex | 說明 |
|---|---|---|
| 純數字 | ^[0-9]*$ | |
| n 位數字 | ^\d{n}$ | |
| 至少 n 位 | ^\d{n,}$ | |
| m~n 位 | ^\d{m,n}$ | |
| 非零開頭整數 | ^(0|[1-9]\d*)$ | |
| 兩位小數正實數 | ^\d+(\.\d{2})?$ | |
| 1~3 位小數 | ^\d+(\.\d{1,3})?$ | |
| 正整數 | ^\+?[1-9]\d*$ | |
| 負整數 | ^-[1-9]\d*$ | |
| 長度 3 字串 | ^.{3}$ | |
| 英文字母 | ^[A-Za-z]+$ | |
| 大寫字母 | ^[A-Z]+$ | |
| 小寫字母 | ^[a-z]+$ | |
| 字母數字 | ^[A-Za-z0-9]+$ | |
| 字母數字底線 | ^\w+$ | |
| 密碼強度 | ^[a-zA-Z]\w{5,17}$ | 字母開頭,6-18 位 |
| 排除特殊符號 | [^%&',;=?$"]+ | |
| 中文 | ^[\u4e00-\u9fa5]+$ | |
^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$ | ||
| URL | ^https?://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$ | |
| 電話 | ^(\d{3,4}-)?\d{7,8}$ | 含區碼 |
| 身分證 | ^\d{15}|\d{18}$ | 15/18 位 |
| 月份 | ^(0?[1-9]|1[0-2])$ | 1-12 |
| 日期 | ^((0?[1-9])|([12]\d)|30|31)$ | 1-31 |
| 符號 | 說明 |
|---|---|
\ | 轉義/元字元/反向引用/八進制 |
^ | 字串開頭(多行模式下行首) |
$ | 字串結尾(多行模式下行尾) |
* | 零或多次 {0,} |
+ | 一次或多次 {1,} |
? | 零或一次 {0,1} |
{n} | 恰好 n 次 |
{n,} | 至少 n 次 |
{n,m} | n 到 m 次 |
? (貪婪控制) | 緊跟量詞後,非貪婪模式 |
. | 除 \n 外任意字元 |
(pattern) | 捕獲組,可反向引用 |
(?:pattern) | 非捕獲組 |
(?=pattern) | 正向前瞻 |
(?!pattern) | 負向前瞻 |
x|y | 或 |
[xyz] | 字元集合 |
[^xyz] | 排除集合 |
[a-z] | 字元範圍 |
\b | 單字邊界 |
\B | 非單字邊界 |
\d | 數字 [0-9] |
\D | 非數字 |
\s | 空白字元 |
\S | 非空白 |
\w | 單字字元 [A-Za-z0-9_] |
\W | 非單字字元 |
s.replace(/^\s+|\s+$/g, '') 或 s.trim()/<(.*)>.*<\/\1>|<(.*)\/>/(簡易,複雜 HTML 請用解析器)s.replace(/[^\x00-\xff]/g, 'aa').length(\d+)\.(\d+)\.(\d+)\.(\d+) → $1*256^3 + $2*256^2 + $3*256 + $4s.replace(/(.*\/){0,}([^.]+).*/, '$2')RegexOptions.Compiled 或 static readonly Regex 快取。(a+)+、(a|aa)+ 等嵌套量詞,改用具體字元類別或原子組 (?>...)。