相关疑难解决方法(0)

Firefox错误:无法检查输入,因为该模式不是有效的正则表达式:正则表达式中的身份转义无效

我正在使用正则表达式模式匹配HTML5表单验证.最新版本的Firefox给我一个错误.我才开始在Firefox 46中看到这一点.我认为这不是早期Firefox版本中的问题.

无法检查,<input pattern='[\@\%]'>因为该模式不是有效的正则表达式:正则表达式中的无效标识转义

由这个非常简单的测试用例引起的:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
  </head>
  <form>
    <input pattern="[\@\%]">
  </form>
</html>
Run Code Online (Sandbox Code Playgroud)

为什么将这些字符转义为错误?我总是在正则表达式中逃避所有不是数字或字母的内容.除了这个版本的Firefox,我从来没有抱怨过这种类型的转义字符.

当我学习正则表达式时,我被告知所有不是数字或字母的东西都可能具有特殊意义.即使它现在没有,它可能在未来的版本中,所以最好逃避它们.这不是真的吗?

是否有我不应该为Firefox逃脱的字符列表?

regex firefox html5 escaping

10
推荐指数
1
解决办法
5528
查看次数

如何从字符串的开头和结尾剪掉特定字符?

如何"从字符串的开头和结尾删除特定字符,双引号(),出现任意次数?

我看了一下string.trim(),修剪了任何空白字符,但是不可能提供一个可选的参数"作为搜索的针.

javascript regex trim

5
推荐指数
1
解决办法
2711
查看次数

标签 统计

regex ×2

escaping ×1

firefox ×1

html5 ×1

javascript ×1

trim ×1