0

我使用了以下代码和正则表达式

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

满足以下要求:-

  1. 它将允许所有特殊字符
  2. 它必须包含至少 1 个字母或数字
  3. 只有特殊字符不起作用

一切正常,但如果**我只输入_(下划线),验证通过,这不应该。**即无效字符串不会打印。

4

1 回答 1

1

使用以下正则表达式:

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

您的正则表达式失败,因为在正则表达式中\w代表字母或数字或下划线。您的正则表达式有一个前瞻检查以下字符是否遵循模式零个或多个字符后跟一个单词字符(字母/数字/下划线)后跟一个数字。

于 2013-03-20T12:54:18.787 回答