如何在正则表达式中添加特殊字符?

5

我有一个正则表达式,可以匹配三种类型的撇号:'’‘。我直接从Microsoft Word中复制了最后两个字符到正则表达式中。但是当我测试它时,我的正则表达式无法匹配,并且在Firefox中检查我的JavaScript验证脚本时,我看到的是'’‘\而不是'’‘。我需要转义它们或者使用ASCII编码吗?


在这种情况下转义不起作用。尝试使用ASCII。 - SomeKittens
其中一个的ASCI代码是´。你能告诉我如何做吗? - user1436111
1
这一切都可能在剪切粘贴中丢失。请发布您尝试失败的完整JS测试。 '’⠀ ˜看起来像字节码。 - user557597
1
你是否使用ASCII编码或UTF-8编码保存了你的脚本?如果不确定,可以下载像Notepad++这样的程序并更改编码。确保所有文件都使用UTF-8编码,然后在HTML文件的头部添加<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> - Oliver Moran
2个回答

3

在最新的JS版本中,八进制代码已被弃用。 - zzzzBov

1

尝试

/['\u2018\u2019]/

这匹配其中一个 '’‘

解释:

在 JavaScript 正则表达式中,\u1234 匹配 Unicode 码点 1234。为了找到这种特殊情况的正确代码,我将字符复制到 EditPadPro 中,并让它将它们转换为 Unicode 码点。


一些解释会很好。那些“试试这个”答案只是给了鱼,但并没有教如何钓鱼。 - Sebastian Mach

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接