正規表示式js驗證,正規表示式js驗證

2022-06-21 23:05:36 字數 4084 閱讀 2185

1樓:緋彈亞絲娜

所求正規表示式如下:

^(?!.*\)\d)(?!.*[+\-*/]([+\-*/]|\)))(?!.

*\([+*/])(?!.*(\d|\))\()(?=\d|\-|\()(?

=.*(\d|\))$)(?![^\(]*\))(?!.

*\([^\)]*$)[\d+\-*/\(\)]*$

解釋:^

(?!.*\)\d) #規則a,不允許右括號後接數字

(?!.*[+\-*/]([+\-*/]|\))) #規則b,不允許符號後面接符號或右括號

(?!.*\([+*/]) #規則c,不允許左括號後接運算子(- 可以表示負號)

(?!.*(\d|\))\() #規則d,不允許左括號前有數字或右括號

(?=\d|\-|\() #規則e,字串開頭必須是,數字,負號,左括號中的一個

(?=.*(\d|\))$) #規則f:結尾必須是數字或者右括號

(?![^\(]*\)) #規則h:右括號的左邊至少存在一個左括號

(?!.*\([^\)]*$) #規則g:左括號的右邊至少存在一個右括號

[\d+\-*/\(\)]* #開始匹配,字串由數字,符號和括號組成

$沒考慮空格的情況,如果接受空格的輸入,請自行新增。

js是做不到限制小括號一一對應的,只有使用.net的平衡組才能實現這個效果。

加入平衡組的正規表示式為:

^(?!.*[^\d+\-*/\(\)])(?!.*\)\d)(?!.

*[+\-*/]([+\-*/]|\)))(?!.*\([+*/])(?!.*(\d|\))\()(?

=\d|\-|\()(?=.*(\d|\))$)[^\(\)]*(((?

'open'\()[^\(\)]*)+((?'-open'\))[^\(\)]*)+)*(?(open)(?!

))$由於使用了平衡組,此正規表示式需要在.net環境下執行

測試**:

js驗證密碼的正規表示式

2樓:陳大頭

完整的js正規表示式:

//強:字母+數字+特殊字元

^(?![a-za-z]+$)(?!\d+$)(?!

[!@#$%^&*]+$)(?![a-za-z\d]+$)(?!

[a-za-z!@#$%^&*]+$)(?![\d!

@#$%^&*]+$)[a-za-z\d!@#$%^&*]+$    //中:字母+數字,字母+特殊字元,數字+特殊字元

3樓:吸湮傷肺卜傷心

密碼驗證密碼就:

var pwd=docment.getelementbyid("pwd").value; //獲取密碼框裡的元素

var reg="這裡寫你要求密碼的正規表示式格式";

//例如密碼要求5-10位字母數字下劃線,那麼正則式就是 var reg=/^\w$/; (記住^開始和$不要漏了)

if(reg.test(pwd)){

return true;)

4樓:匿名使用者

var pa=/^(?=.$)(?![0-9]+$)(?!.*(.).*\1)[0-9a-za-z]+$/;

把你允許的特殊字元放到[0-9a-za-z] 中

5樓:匿名使用者

var str="使用者名稱"

str^(([a-za-z\d]+)|([a-z\d\x21-\x2f\x3a-\x40\x5b-\x60\x7b-\x7e]+)|([a-za-z\x21-\x2f\x3a-\x40\x5b-\x60\x7b-\x7e]+)|([a-z\d\x21-\x2f\x3a-\x40\x5b-\x60\x7b-\x7e]+))$

分兩次檢測,1:先檢查是否包含使用者名稱,2:再檢是否符合條件2

js驗證密碼的正規表示式。

6樓:陳大頭

完整的js正規表示式:

//強:字母+數字+特殊字元

^(?![a-za-z]+$)(?!\d+$)(?!

[!@#$%^&*]+$)(?![a-za-z\d]+$)(?!

[a-za-z!@#$%^&*]+$)(?![\d!

@#$%^&*]+$)[a-za-z\d!@#$%^&*]+$    //中:字母+數字,字母+特殊字元,數字+特殊字元

js 寫 驗證日期正規表示式

7樓:匿名使用者

經我使用,滿意答案里長長那一個表示式有誤,比如2013-03-28匹配不通過,下面這個暫時未發現有誤:

/(([09][19]|[09][19][09]|[09][19][09]|[19][09])(((0[13578]|1[02])(0[19]|[12][09]|3[01]))|((0[469]|11)(0[19]|[12][09]|30))|(02(0[19]|[1][09]|2[08]))))|((([09])(0[48]|[2468][048]|[13579][26])|((0[48]|[2468][048]|[3579][26])00))0229)/

8樓:匿名使用者

如果單純用正則的話,去掉第一個/和最後的/ig簡單的日期格式驗證:

/^([1-2]\d)[\/|\-](0?[1-9]|10|11|12)[\/|\-]([1-2]?[0-9]|0[1-9]|30|31)$/ig

下面的正則式不僅僅匹配了日期格式,而且對日期的邏輯做了嚴格要求,判斷了大月31天,小月30天,2月28,閏年情況2月29天

/((^((1[8-9]\d)|([2-9]\d))([-\/\._])(10|12|0?[13578])([-\/\.

_])(3[01]|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d)|([2-9]\d))([-\/\._])(11|0?

[469])([-\/\._])(30|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d)|([2-9]\d))([-\/\.

_])(0?2)([-\/\._])(2[0-8]|1[0-9]|0?

[1-9])$)|(^([2468][048]00)([-\/\._])(0?2)([-\/\.

_])(29)$)|(^([3579][26]00)([-\/\._])(0?2)([-\/\.

_])(29)$)|(^([1][89][0][48])([-\/\._])(0?2)([-\/\.

_])(29)$)|(^([2-9][0-9][0][48])([-\/\._])(0?2)([-\/\.

_])(29)$)|(^([1][89][2468][048])([-\/\._])(0?2)([-\/\.

_])(29)$)|(^([2-9][0-9][2468][048])([-\/\._])(0?2)([-\/\.

_])(29)$)|(^([1][89][13579][26])([-\/\._])(0?2)([-\/\.

_])(29)$)|(^([2-9][0-9][13579][26])([-\/\._])(0?2)([-\/\.

_])(29)$))/ig

9樓:匿名使用者

\d-\d-\d

js中用正規表示式如何對使用者名稱進行基本驗證?

10樓:露露

^表示開始。$表示結束。例:regex reg = new regex(@"^\d-\d$");

加了開始結束標記之後,輸入的數量和內容必須完全相同才為true(完全匹配)

(\d,代表數字0-9)(\d,表示不是數字)(\w,表示a-z,a-z,0-9,_)(\w 表示不是上面小w表示的)(\s 表示 空格。)

」*「 表示0到多個

「+」 1到多個

「?」 0個或者1個

「[ ]「 (一個數到另一個數之間)自定義匹配內容

「 |」或者

「{}」 次數

例如:郵箱驗證:

regex r = new regex(@"^[\w]+@[\w].[a-z|a-z]$");

自己kankan琢磨一下就懂了

js正規表示式怎樣匹配,js正規表示式怎樣匹配之其中一個

不要亂用轉義符 var regexp g 或者var regexp g 正規表示式匹配的問題?括號寫錯了,正則更正為如下,就可以了 b endfunction endtask s s w b 我已經測試過了 af ai am ap ar b b2 isin js中的正規表示式怎樣將一個字串以 分隔開...

正規表示式dd的意思這個正規表示式什麼意思dd

表示行開頭 至少出現一次數字 任意字元和至少出現一次數字 出現1次或0次 行結尾。行開頭 d 數字 出現至少1次 任意字元,除換行和回車之外 出現0或1次 d 括號裡內出現0或1次 行結尾 擴充套件資料 常用正規表示式 2 域名 a za z0 9 a za z0 9 a za z0 9 a za ...

關於正規表示式的小問題,關於正規表示式的一個小問題

用replace方法 var str 12,34 56 78 12,34 56 78 str str.replace g,alert str 返回12345678替換繼續回答你的問題 string s 12 3 2 1 3 2 string a s.split for int i 0 i publi...