Javascript 验证我的代码只使用ASCI |检查正则表达式

Javascript 验证我的代码只使用ASCI |检查正则表达式,javascript,Javascript,IE9给了我一个语法上没有意义的错误缺失) 以前是预期的上一个SO帖子 我没有在任何其他浏览器上看到随机错误,我的代码通过jslint.com和jshint.com 要验证是否没有unicode潜入我的代码中,所以我将通过正则表达式运行它并检查 [\x00-\x7F] 这是一种有效的方法吗 相关的 自从我在IE中开发以来,差不多是十年前了,所以我的记忆可能是错误的,但我隐约记得IE不喜欢代码中的控制字符(0x20以下的字符,除了换行符、回车符和制表符) 根据您使用的编辑器,在按住@ABCDEF

IE9给了我一个语法上没有意义的错误<代码>缺失)

以前是
预期的上一个SO帖子

我没有在任何其他浏览器上看到随机错误,我的代码通过jslint.com和jshint.com

要验证是否没有unicode潜入我的代码中,所以我将通过正则表达式运行它并检查

[\x00-\x7F]
这是一种有效的方法吗

相关的


自从我在IE中开发以来,差不多是十年前了,所以我的记忆可能是错误的,但我隐约记得IE不喜欢代码中的控制字符(0x20以下的字符,除了换行符、回车符和制表符)

根据您使用的编辑器,在按住
@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^.
的同时按下
CTRL
,即可轻松插入控制代码,以获取控制代码0x00-0x1f

如果要使用regexp验证是否只有可打印的ASCII和允许的控制字符,可以使用
^[\x09\x0a\x0d\x20-\x7e]*$
。它允许制表符(x09)、换行符(x0a)、回车符(x0d)和所有可打印的ASCII字符。删除(x7f)被省略

如果要检测是否有非可打印ASCII或允许的控制字符,可以使用
[^\x09\x0a\x0d\x20-\x7f]
匹配任何非制表符、换行符、回车符或可打印ASCII的字符

在Unicode中有一些新的行终止符:下一行(\u0085)、行分隔符(\u2028)和段落分隔符(\u2029)


许多internet协议(以及Windows系统上的普通文本文件)都希望在行尾显示回车符,然后再显示换行符(
\0x0d\0x0a
),这是从打印机时代继承下来的,在打印机时代,您希望能够只返回回车符而不前进到下一行,例如,能够写下划线。它还可以通过再次打印同一行或以灰度打印使文本更加粗体…

您能显示实际代码吗?目前,如果你不分享你的代码,我们无法判断你的代码有什么问题。我的代码没有任何问题…这是一个IE问题…正如我所说,我的代码通过了jslint.com和jshint.com…+我看不到IE给出了一个准确的行号…所以我不知道发布什么。总之…使用regexpal.com提供了一个很棒的视图我的代码在ASCI中的颜色高亮显示…只需将您的代码放在一个框中,将我上面提到的正则表达式放在另一个框中…它会为您高亮显示…非常确定我拥有所有ASCII。Unicode是可以使用的,但是如果您想检查ASCII,您应该使用
[\x09\x0a\x0c\x20-\x7e]*
。下面有许多控制字符,\x20,我不确定IE如何处理它们。这包括我代码中的所有字符:[\x0a\x20-\x7e]…不需要09或0c