Ste*_*ler 10 regex firefox html5 escaping
我正在使用正则表达式模式匹配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逃脱的字符列表?
小智 10
这是由于以下更改:错误 1227906 - HTMLpattern
属性应u
为正则表达式设置标志
正如有人已经说过的那样,您不必逃避这些字符。只需使用:
<input pattern="[@%]">
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5528 次 |
最近记录: |