2013-03-20 124 views
0

我用下面的代碼和正則表達式下劃線跳過正則表達式

var regex = new RegExp (/^(?=.*[\w\d]).+/); 
if (!regex.test(value)) { 
    console.log(' not valid string'); 
} 

用於下列要求: -

  1. 它將使所有的特殊字符
  2. 它必須包含至少1字母或數字
  3. 只有特殊字符不起作用

一切工作正常,但如果**我只輸入_(下劃線),驗證通過,不應該。無效的字符串不會打印。

回答

1

使用以下正則表達式:

/^(?=.*[A-Za-z\d]).+/ 

您正則表達式失敗,因爲在正則表達式\w代表一個字母或數字或下劃線。您的正則表達式可以檢查以下字符是否遵循零個或多個字符,後跟一個字符(字母/數字/下劃線)後跟一個數字。