regex - Firefox 给出 SyntaxError: invalid regexp group
问题描述
我几乎没有用于表单验证的正则表达式,我注意到我的项目无法通过 Firefox 访问,因为它什么也没显示!但在控制台中给出错误,SyntaxError: invalid regexp group
nicRegex 正在检查我国的国民身份证。根据当前格式,格式应该是937962723V
或或任何 11 位数字。937962723X
phoneRegex 是用我的国家代码检查电话号码。94121212121
或者0762323232
const nicRegex = /^(?:19|20)?\d{2}(?:[01235678]\d\d(?<!(?:000|500|36[7-9]|3[7-9]\d|86[7-9]|8[7-9]\d)))\d{4}(?:[vVxX])$/;
解决方案
TLDR;谨慎使用命名的捕获组(或不使用它们)
对我来说,这是因为我认为我会很聪明,并尝试在我的正则表达式中使用命名捕获组...... Firefox 惩罚了我。
不起作用: /(?<text>[a-z]+)/
是否有效: /([a-z]+)/
推荐阅读
- android - 模块上传到maven时,jar中的文件丢失
- cakephp - Cakephp 3 muffin/trash 软删除插件时 restoreTrash 显示错误“未找到书籍”
- python - Python - 动态序列化器.ModelSerializer 元类
- javascript - 使用 Google Chrome 运行微调器开始为时已晚
- c - C:缓冲区和指针
- string - Erlang:如何将 Atom 转换为 String?
- jquery - 使 DataTable 更宽
- sql - 应用程序设计:提供对象元数据?
- python - 如何在 onchange 方法中复制 One2many 字段并对其进行修改?
- javascript - 使用jquery删除循环内输入标签的禁用属性