正則表達式測試器
關於此工具
可以對輸入文字執行正則表達式並確認比對位置。所有處理都在瀏覽器內完成,不會傳送任何資料。
執行測試
—
使用方式
- 輸入正則表達式與旗標。
- 在輸入文字上點擊「執行測試」即可顯示比對結果。
範例(可直接使用的正則表達式,依類別 / 100+)
基礎 / 空白 / 行
- 僅空行:
^\s*$
(m) - 開頭空白:
^\s+
(m) - 結尾空白:
\s+$
(m) - 首尾空白(可修剪):
^\s+|\s+$
(m) - 連續空白(壓成 1 個):
\s{2,}
- 可見字元(非空白):
\S+
- 僅 ASCII:
^[\x00-\x7F]+$
- 可列印 ASCII:
^[\x20-\x7E]+$
- 包含非 ASCII 的行:
[^\x00-\x7F]
- 單字邊界:
\bword\b
數字 / 金額
- 整數(可帶正負號):
^-?\d+$
- 小數(可帶正負號):
^-?\d*\.\d+$
- 數值(整數或小數):
^-?(?:\d+|\d*\.\d+)$
- 三位分隔(範例: 1,234,567):
^\d{1,3}(?:,\d{3})+$
- 金額(¥ 或 $,可含分隔符):
^(?:¥|\$)\s?\d{1,3}(?:,\d{3})*(?:\.\d{2})?$
- 百分比:
^\d{1,3}(?:\.\d+)?%
- 科學記號:
^[+-]?(?:\d+\.?\d*|\.\d+)[eE][+-]?\d+$
- 十六進位:
^(?:0x)?[0-9A-Fa-f]+$
- 二進位:
^[01]+$
- 八進位:
^[0-7]+$
日期 / 時間
- 日期 YYYY-MM-DD(僅格式):
^\d{4}-\d{2}-\d{2}$
- 時間 HH:MM(24 小時制):
^(?:[01]\d|2[0-3]):[0-5]\d$
- 時間 HH:MM:SS(24 小時制):
^(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d$
- ISO8601 日期時間(簡易):
^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?Z$
- 年月(YYYY/MM):
^\d{4}/(0[1-9]|1[0-2])$
- 日本年號(令和 R\d+ 年,簡易):
^令和\d+年(?:\d+月(?:\d+日)?)?$
(u) - 星期(英文 3 字母):
^(Mon|Tue|Wed|Thu|Fri|Sat|Sun)$
- 時區(±HH:MM):
^[+-](?:[01]\d|2[0-3]):[0-5]\d$
聯絡資訊 / 地址(簡易)
- 日本郵遞區號:
^\d{3}-\d{4}$
- 日本電話(0x-xxxx-xxxx,簡易):
^0\d{1,4}-\d{1,4}-\d{4}$
- 國際電話(+國碼,可含空格,簡易):
^\+\d{1,3}\s?\d+(?:[\s-]\d+)*$
- 日本都道府縣(漢字):
^(?:東京都|北海道|(?:京都|大阪)府|.+県)$
(u) - 電子郵件(通用簡易):
^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$
- 使用者名稱(3–16 個字母數字或底線):
^[A-Za-z0-9_]{3,16}$
- 密碼強度(須含大小寫、數字、符號各 1,且 ≥8):
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[\W_]).{8,}$
Web / URL / HTTP
- URL(http/https,簡易):
https?:\/\/\S+
- 網域(不含 Punycode,簡易):
^(?:[A-Za-z0-9-]+\.)+[A-Za-z]{2,}$
- 含子網域的主機:
^(?:[A-Za-z0-9-]+\.)*[A-Za-z0-9-]+\.[A-Za-z]{2,}$
- 查詢參數 key=value:
[?&]([A-Za-z0-9._~-]+)=([^&#]+)
- 片段:
#\w[\w-]*
- 檔案副檔名(.png|.jpg|.gif 等):
\.(?:png|jpe?g|gif|webp|svg)$
(i) - HTTP 方法:
^(GET|POST|PUT|PATCH|DELETE|HEAD|OPTIONS)$
- HTTP 標頭行:
^[A-Za-z0-9-]+:\s?.+$
(m) - Basic 認證標頭:
^Basic\s+[A-Za-z0-9+/=]+$
- Bearer 權杖標頭:
^Bearer\s+[A-Za-z0-9\-\._~\+\/]+=*$
網路(IP/MAC/CIDR/UUID/JWT 等)
- IPv4(0–255 精確):
\b(?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\b
- IPv6(支援省略,簡易):
\b(?:[A-Fa-f0-9]{1,4}:){2,7}[A-Fa-f0-9]{1,4}\b
- MAC 位址(冒號分隔):
^(?:[0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}$
- MAC 位址(連字號分隔):
^(?:[0-9A-Fa-f]{2}-){5}[0-9A-Fa-f]{2}$
- CIDR(IPv4,長度 0–32):
^\b(?:\d{1,3}\.){3}\d{1,3}\/(?:[0-9]|[12]\d|3[0-2])\b$
- UUID v4:
^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
(i) - GUID(不分大小寫):
^{?[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}}?$
(i) - Base64(含填補):
^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$
- JWT(三段以點分隔):
^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+$
- SSH 公鑰(ssh-rsa/ed25519):
^ssh-(?:rsa|ed25519)\s+[A-Za-z0-9+/=]+(?:\s.+)?$
檔案 / 路徑 / 版本
- Windows 絕對路徑:
^[A-Za-z]:\\(?:[^\\/:*?"<>|\r\n]+\\)*[^\\/:*?"<>|\r\n]*$
- UNIX 絕對路徑:
^\/(?:[^\/\0]+\/)*[^\/\0]*$
- 安全檔名(僅字母數字 ._-):
^[A-Za-z0-9._-]+$
- 取得副檔名:
\.([A-Za-z0-9]+)$
- Git 雜湊(7–40 位):
^[0-9a-f]{7,40}$
- SemVer:
^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$
- Docker 映像:標籤:
^[a-z0-9]+(?:[._-][a-z0-9]+)*(?::[\w.-]+)?$
- NPM 套件名稱(簡易):
^(?:@[\w-]+\/)?[\w.-]+$
- URL slug:
^[a-z0-9]+(?:-[a-z0-9]+)*$
Web 前端(HTML/CSS/色彩)
- HTML 標籤(對應開頭/結尾,簡易):
<([A-Za-z][A-Za-z0-9]*)\b[^>]*>([\s\S]*?)<\/\1>
- HTML 註解:
<!--[\s\S]*?-->
- href 屬性值:
href\s*=\s*"(.*?)"
(i) - CSS 色碼(#RGB/#RRGGBB):
^#(?:[0-9A-Fa-f]{3}){1,2}$
- CSS rgb():
^rgb\(\s*(?:[01]?\d?\d|2[0-4]\d|25[0-5])\s*,\s*(?:[01]?\d?\d|2[0-4]\d|25[0-5])\s*,\s*(?:[01]?\d?\d|2[0-4]\d|25[0-5])\s*\)$
- CSS hsl():
^hsl\(\s*(?:\d|[1-2]\d{2}|3[0-5]\d)\s*,\s*(?:\d|[1-9]\d)%\s*,\s*(?:\d|[1-9]\d)%\s*\)$
- CSS 單位(px、em 等):
^-?\d+(?:\.\d+)?(?:px|em|rem|vh|vw|%)$
字串 / 語法(程式片段)
- JavaScript 識別字(簡易):
^[A-Za-z_$][A-Za-z0-9_$]*$
- JavaScript // 註解行:
^\s*\/\/.*$
(m) - JavaScript 區塊註解:
\/\*[\s\S]*?\*\/
- 雙引號字串(含跳脫,簡易):
"(?:[^"\\]|\\.)*"
- 單引號字串:
'(?:[^'\\]|\\.)*'
- 樣板字面值(簡易):
`(?:[^`\\]|\\.|\\${[^}]*})*`
- JSON 鍵:
"([A-Za-z0-9_]+)"\s*:
- CSV 儲存格(支援雙引號,簡易):
(?:"(?:[^"]|"")*"|[^,\r\n]*)
- 電子郵件本文 URL 擷取:
https?:\/\/[^\s)>"]+
安全 / 輸入驗證(請謹慎)
- 信用卡(未含 Luhn,快速檢查):
\b(?:\d[ -]*?){13,19}\b
- VISA(以 4 開頭,13/16/19 位):
\b4\d{12}(?:\d{3})?(?:\d{3})?\b
- Mastercard(51–55 / 2221–2720):
\b(?:5[1-5]\d{14}|2(?:2[2-9]\d{2}|[3-6]\d{3}|7[01]\d{2}|720\d{2})\d{10})\b
- 日本個人編號(僅格式,無檢核):
^\d{12}$
- 郵遞區號 + 地址行(簡易):
^\d{3}-\d{4}\s+.+$
- 偵測 XSS 的 <script> 標籤(簡易):
<\s*script\b[^>]*>[\s\S]*?<\s*\/\s*script\s*>
- SQL 常見關鍵字(簡易):
\b(SELECT|INSERT|UPDATE|DELETE|DROP|ALTER|CREATE)\b
(i)
※ 若用於提取或檢查個人或機密資訊,請務必確認相關法規與內部規範。
日誌 / 格式
- Apache/Nginx CLF(簡易):
^(\S+)\s+(\S+)\s+(\S+)\s+\[([^\]]+)\]\s+"([^"]+)"\s+(\d{3})\s+(\d+|-)
- ISO8601 時間戳擷取:
\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})
- JSON Lines(一行一個 JSON):
^\{.*\}$
(m) - UUID 擷取:
[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}
(i) - IP 擷取(IPv4,簡易):
\b(?:\d{1,3}\.){3}\d{1,3}\b
Markdown
- 標題(#~######):
^(#{1,6})\s+(.+)$
(m) - 連結:
\[([^\]]+)\]\(([^)]+)\)
- 圖片:
!\[([^\]]*)\]\(([^)]+)\)
- 行內程式碼:
`([^`]+)`
- 程式碼區塊(```…```,簡易):
```[\s\S]*?```
- 項目符號(- * +):
^\s*[-*+]\s+.+$
(m) - 引用 >:
^\s*>\s+.+$
(m)
日語書寫 / 字元種類(建議使用 Unicode u 旗標)
- 僅平假名:
^[\u3041-\u3096]+$
(u) - 僅片假名:
^[\u30A1-\u30FA\u30FC]+$
(u) - 僅半形片假名:
^[\uFF66-\uFF9D\uFF70]+$
(u) - 包含漢字:
[\u4E00-\u9FFF]
(u) - 僅全形字元:
^[^\x00-\x7F]+$
- 全形英數字:
^[\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A]+$
(u) - 郵遞區號(支援全形數字,簡易):
^[0-9\d]{3}-[0-9\d]{4}$
(u) - 假名標註(全形片假名):
^[\u30A1-\u30FA\u30FC\s]+$
(u)
文字整理 / 擷取工具
- 移除前綴編號「1. 」:
^\s*\d+\.\s*
(m) - 移除項目符號前綴:
^\s*(?:[-*+]|•|\d+\.)\s*
(m) - 擷取括號內容(圓括號):
\(([^)]*)\)
- 擷取雙引號內容:
"([^"\\]|\\.)*"
- 擷取日圓金額「¥123,456」:
¥\s?\d{1,3}(?:,\d{3})*
- 擷取電子郵件網域:
@([A-Za-z0-9.-]+\.[A-Za-z]{2,})
- 移除 HTML 標籤(簡易):
<[^>]+>
- 重複空白 → 1 個:
\s{2,}
其他實用
- 日本車牌號碼(超簡易):
^[\u3041-\u3096\u30A1-\u30FA\u4E00-\u9FFF]{1,2}\s?\d{3,4}$
(u) - YouTube 影片 ID:
(?<=v=|youtu\.be\/)[A-Za-z0-9_-]{11}
- Twitter/X 使用者 @handle:
@[A-Za-z0-9_]{1,15}
- Slack 頻道:
#[a-z0-9_-]{1,80}
- 色名(部分 CSS 關鍵字示例):
\b(?:red|green|blue|black|white|gray|silver|maroon)\b
(i) - 擷取括號包住的註解〔…〕:
[([^]]*)]|【([^】]*)】|〔([^〕]*)〕
(u) - 偵測半形片假名:
[\uFF61-\uFF9F]
(u) - 英文字(含連字號):
\b[A-Za-z]+(?:-[A-Za-z]+)*\b
- 電子郵件本文訂單編號(範例 #12345):
#\d{4,}
- 日本車站名稱(以「駅」結尾):
.+駅\b
(u)
※ 以上為「常用、可直接貼上」的實務簡易集。如需嚴謹驗證(例如閏年、國際化網域、完整 HTML 剖析等),請另行考慮專用邏輯或函式庫。