首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何解决模式HTML / Javascript中的无效转义?

如何解决模式HTML / Javascript中的无效转义?
EN

Stack Overflow用户
提问于 2018-10-23 00:16:39
回答 1查看 0关注 0票数 0

我正在尝试创建一个使用模式的输入字段来检查输入是否是有效的Windows文件路径。我的模式是

代码语言:javascript
复制
/^(?:[\w]\:|\\)(\\[a-zA-Z_\-\s0-9\.()~!@#$%^&=+';,{}\[\]]+)+\.(exe)$/g

然而,当把它放入输入字段的pattern属性时,它说(在控制台中)

模式属性值^(?:[\ w]:| \)(\ [a-zA-Z _- \ s0-9。()〜!@#$%^&= +';,{} []] + )+。(exe)$不是有效的正则表达式:Uncaught SyntaxError:无效的正则表达式:/ ^(?:[\ w]:| \)(\ [a-zA-Z _- \ s0-9。() 〜!@#$%^&= +';,{} []] +)+。(exe)$ /:无效的逃脱

我已经尝试了几种不同的写法,但似乎都没有用。

EN

回答 1

Stack Overflow用户

发布于 2018-10-23 09:26:11

只需要转义必须转义的字符类中的字符,否则将始终收到此错误。

使用

代码语言:javascript
复制
pattern="(?:\w:|\\)(\\[\w\s.()~!@#$%^&=+';,{}[\]-]+)+\.exe"

JSFiddle

细节

  • 连字符必须位于字符类的末尾
  • ] 必须转义字符类的内部
  • [.不能逃脱
  • :绝不能esacaped,这是从来没有特殊字符
  • [a-zA-Z0-9_] = \w
  • pattern总是被默认的停靠,你不需要^$锚。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100005090

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档