正規表示式 趣現象一則

2021-09-07 22:17:19 字數 398 閱讀 5184

昨天幫朋友解決了乙個正規表示式問題,很有意思的,和大家分享一下。

需求很簡單,web頁面上乙個輸入月份的文字框,只能輸入1~12,要求用乙個regularexpressionvalidator控制項進行驗證。如何配置正規表示式?

朋友的想法很直接:([1-9])|([1][0-2])。貌似沒有問題,1~9的一位數字或首位為1個位為0~2的兩位數,正好表示1~12。然而,這個表示式只能匹配1~9,如果輸入了10~12,就會出現問題。經過n次調整也無法解決,朋友瀕臨崩潰……

我的解決方法更直接:([1][0-2])|([1-9])。看到麼,只是順序變了一下,問題解決。

個中原理就涉及到編譯原理中的一些理論了,我能體會,但無法詳解。僅將問題羅列在此,一是希望其他朋友遇到類似問題時能盡快解決;二是希望有高手降臨,釋清其中原理。

記正規表示式一則小小填坑記

需要匹配的內容如下 0x12 0x12 0x12 三個重複的十六進製制字串,一開始的做法是 0x 0 9a fa f 該正規表示式中 0 9a fa f 是指0 9的數字,或者a f的字母,或者a f的字母。是指重複2次。其中?的作用是 0個或者1個。因此這樣做是不符合的,因為0個空格就導致了這樣0...

正規表示式 正規表示式 總結

非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...

正規表示式 一

若你使用過windows dos下用於檔案查詢的萬用字元,也就是 和?如果你想查詢某個目錄下的所有的word文件的話,你會搜尋 doc。會被解釋成任意的字串。和萬用字元類似,正規表示式也是用來進行文字匹配的工具,只不過比萬用字元更能精確地描述你的需求。比如你可以編寫乙個正規表示式來查詢所有以0開頭,...