使用regexp驗證表單中的「真實姓名」一欄時,出現『/w』無法滿足需求,固上網尋求解決方案。
採用來自的解決方案
匹配2~4個中文字元
"^[\u4e00-\u9fa5]$"
問題基本解決。
同時鏈結中有很多的拓展知識
\w匹配的僅僅是中文,數字,字母,對於國人來講,僅匹配中文時常會用到,見下:
匹配中文字元的正規表示式: [\u4e00-\u9fa5]
或許你也需要匹配雙位元組字元,中文也是雙位元組的字元
匹配雙位元組字元(包括漢字在內):[^\x00-\xff]
注:可以用來計算字串的長度(乙個雙位元組字元長度計2,ascii字元計1)
英文本母:[a-za-z]匹配中文,英文本母和數字及_:數字:[0-9]
^[\u4e00-\u9fa5_a-za-z0-9]+$
同時判斷輸入長度:·
[\u4e00-\u9fa5_a-za-z0-9_]^[\w\u4e00-\u9fa5\uf900-\ufa2d]*$
[\u4e00-\u9fa5_a-za-z0-9_]^[\w\u4e00-\u9fa5\uf900-\ufa2d]*$
^(?!_)(?!.*?_$)[a-za-z0-9_\u4e00-\u9fa5]+$
其中:
^ 與字串開始的地方匹配
(?!_) 不能以_開頭$ 與字串結束的地方匹配(?!.*?_$) 不能以_結尾
[a-za-z0-9_\u4e00-\u9fa5]+ 至少乙個漢字、數字、字母、下劃線
放在程式裡前面加@,否則需要\\進行轉義 @"^(?!_)(?!.*?_$)[a-za-z0-9_\u4e00-\u9fa5]+$"(或者:@"^(?!_)\w*(?
^[a-za-z0-9_\u4e00-\u9fa5]+$
^\w+$
@"^[\u4e00-\u9fa5]$";
^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$
正規表示式用於字串處理,表單驗證等場合,實用高效,但用到時總是不太把握,以致往往要上網查一番。遇到多多總結吧!
中文正規表示式匹配 正則中文匹配
這篇文章主要講如何使用正則 匹配中文字元,中文正規表示式的匹配規則不像其他正則規則一樣容易記住,下面一起看看這個中文正規表示式是怎麼樣的。w匹配的僅僅是中文,數字,字母,對於國人來講,僅匹配中文時常會用到,見下 匹配中文字元的正規表示式 u4e00 u9fa5 或許你也需要匹配雙位元組字元,中文也是...
中文正規表示式匹配 正則中文匹配
這篇文章主要講如何使用正則匹配中文字元,中文正規表示式的匹配規則不像其他正則規則一樣容易記住,下面一起看看這個中文正規表示式是怎麼樣的。w匹配的僅僅是中文,數字,字母,對於國人來講,僅匹配中文時常會用到,見下 匹配中文字元的正規表示式 u4e00 u9fa5 或許你也需要匹配雙位元組字元,中文也是雙...
正規表示式 w
不管是書本上還是網上的教程,在正規表示式中 w都被介紹為匹配任何單詞字元,包括字母和下劃線,等效於 a za z0 9 今天偶然間發現會員註冊中出現了乙個惡作劇賬號 dmin 注意到那個 了沒?那是乙個俄文本母,在會員註冊過濾中使用 w驗證並不能防止。也就是說 w包括了英文本母以及俄文本母等,在會員...