使用正则表达式获得“编译警告”

时间:2018-11-10 18:17:14

标签: javascript reactjs

我正在使用警告警报进行编译。 这是消息。

Compiled with warnings

./src/components/register/register.js
  Line 5:  Unnecessary escape character: \$  no-useless-escape
  Line 5:  Unnecessary escape character: \^  no-useless-escape
  Line 5:  Unnecessary escape character: \*  no-useless-escape

这是第5行的代码。我正在使用它来检查密码是否包含1个大写字母,1个小写字母,1个数字,1个特殊字符,以及其长度是否超过8个字符。

const passwordRegex = RegExp(/^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#\$%\^&\*])(?=.{8,})/);

我想知道为什么会收到此警报?以及如何使它消失?

1 个答案:

答案 0 :(得分:1)

警告已正确指出,字符类$中的字符^*[!@#$%^&*]不需要转义。在这种情况下,仅有特殊含义的字符是[]-\