五段式 cron 運算式
符合五段式 cron 運算式。兩端都錨住了,整個字串合上才算通過。擷取群組有 1 個。
表示式
/^(\S+\s+){4}\S+$/- 比對範圍
- 整個字串
- 擷取群組
- 1
- 在第一個例子裡抓到的部分
- 0 3 * * 1
自己試一試
隨便輸入一段文字,這個式子抓到的部分就會標示出來。全部在你的瀏覽器裡執行,不會送往任何地方。
0 3 * * 1
符合 1 處
符合的例子
- 0 3 * * 1
- */5 * * * *
- 0 0 1 1 *
不符合的例子
- 0 3 * *
- 0 3 * * 1 2 3
- daily
同一類的其他式子
^([0-9a-fA-F]{1,4}(:[0-9a-fA-F]{1,4})*)?::([0-9a-fA-F]{1,4}(:[0-9a-fA-F]{1,4})*)?$縮寫的 IPv6 位址^\d{3}-\d{2}-\d{5}$韓國營業執照號碼^[a-z]+\/[a-zA-Z0-9][a-zA-Z0-9.+-]*$MIME 類型^data:[a-z]+\/[a-z0-9.+-]+;base64,[A-Za-z0-9+/]+=*$base64 形式的 data: URI^[A-Za-z]:\\.*$Windows 磁碟機路徑^[\^~]?\d+\.\d+\.\d+$帶 ^ 或 ~ 的版本範圍^(10\.\d{1,3}\.\d{1,3}\.\d{1,3}|192\.168\.\d{1,3}\.\d{1,3}|172\.(1[6-9]|2\d|3[01])\.\d{1,3}\.\d{1,3})$私有 IPv4 網段^[A-Z][a-zA-Z0-9]*$帕斯卡命名怎麼看這一頁
- 兩端加上 ^ 和 $,整個字串就必須合上;不加,比對落在文中任何位置都行。用來做輸入檢查的式子,一定要加錨。
- 圓括號 ( ) 會把括住的部分擷取下來。只是想分組的話寫成 (?: ),後面各組的編號才不會往後挪。
- 這裡的每個式子都拿它自己的例子跑過。不過「長得像電子郵件」和「真有這個信箱」始終是兩回事。
- 開放式重複層層巢狀(比如 (a+)+)時,遇到某些輸入耗時會爆炸式增長。把別人的式子貼進程式前,先找找有沒有這種形狀。
常見問題
Q. 符合五段式 cron 運算式的正規表示式是什麼?
^(\S+\s+){4}\S+$。
Q. 哪些字串能符合?
像 0 3 * * 1 這樣的文字能符合,像 0 3 * * 這樣的不能。
Q. 必須整個字串都符合嗎?
是的。它被 ^ 和 $ 括住,只有整串合上才算通過。
Q. 抓到的內容怎麼用?
有 1 個擷取群組,可以從 match[1] 開始依序取出。