ascii的正则表达式特殊字符[复制]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ascii的正则表达式特殊字符[复制]相关的知识,希望对你有一定的参考价值。

我必须使用正则表达式进行密码验证,其中包含至少一个特殊字符。

https://en.wikipedia.org/wiki/ASCII

export const passwordValidation = password => {
  const regPassword = /^(?=.*?[#?!@$%^&*-]).{8,}$/

  return regPassword.test(password)
}

我试过这种方式,但我认为这不是好方法。是否有其他方法可以通过ascii代码检查所有特殊字符,但字母数字除外?

答案

首先,您需要定义“特殊”字符是什么。你是指A-Z(英文字母)范围内的任何东西吗? A-Z和0-9?别的什么?然后你要么使用一个列出你想要的角色类,这就是你所做的,或者是一个否定的类,说你想要的东西不是类中的东西:

return /^(?=.*?[^a-z0-9]).{8,}$/i.test(password);
//              ^---- negated

以上是关于ascii的正则表达式特殊字符[复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 R 中的正则表达式提取 2 个或多个特殊字符之间的值? [复制]

如何去除重音符号并将字母变成“普通”的 ASCII 字符? [复制]

正则表达式说明

求一个正则表达式,要求 数字,大写字母,小写字母,特殊字符 至少两种或两种以上组合的正则表达式。

通过 Java 正则表达式提取 semver 版本字符串的片段

(grep)正则表达式匹配非ASCII字符?