js判断是否输入合法正则表达式

js判断是否输入合法正则表达式

	if (this.editParamForm.extractPattern) {
          let isReg = true;
          try {
            new RegExp(this.editParamForm.extractPattern);
          } catch (e) {
            isReg = false;
          }
          // console.log(isReg);
          if (!isReg) {
            this.$message.error('请检查输入的正则是否正确!');
            return;
          }
        }

相关内容:
new RegExp(pattern, attributes);
pattern 是一个字符串,指定了正则表达式的模式或其他正则表达式。
attributes 是一个可选的字符串,包含属性 “g”、“i” 和 “m”,分别用于指定全局匹配、区分大小写的匹配和多行匹配。ECMAScript 标准化之前,不支持 m 属性。如果 pattern 是正则表达式,而不是字符串,则必须省略该参数。

返回值
一个新的 RegExp 对象,具有指定的模式和标志。如果参数 pattern 是正则表达式而不是字符串,那么 RegExp() 构造函数将用与指定的 RegExp 相同的模式和标志创建一个新的 RegExp 对象。

如果不用 new 运算符,而将 RegExp() 作为函数调用,那么它的行为与用 new 运算符调用时一样,只是当 pattern 是正则表达式时,它只返回 pattern,而不再创建一个新的 RegExp 对象。

抛出
SyntaxError - 如果 pattern 不是合法的正则表达式,或 attributes 含有 “g”、“i” 和 “m” 之外的字符,抛出该异常。

TypeError - 如果 pattern 是 RegExp 对象,但没有省略 attributes 参数,抛出该异常。

上一篇:在python正则表达式的匹配模式pattern中使用变量


下一篇:Spring:SpringAop配合自定义注解实现切面编程