【问题标题】:javascript regex not to allow non ASCII and backslashjavascript 正则表达式不允许非 ASCII 和反斜杠
【发布时间】:2013-08-20 21:14:51
【问题描述】:

我正在寻找一个 JAVASCRIPT 中的正则表达式来允许一个满足以下所有三个条件的字符串:

  1. 可以允许除特殊字符“\”以外的所有字符
  2. 不应允许非 ASCII 字符

我怎样才能得到上述两个的正则表达式...

我将正则表达式写为^[0-9a-zA-Z' ']+$,但这允许非ASCII。 我在网上看到\x00-\x7F 允许使用非ASCII 字符,但是如何将这两者组合为一个正则表达式?

【问题讨论】:

  • Java 之于 Javascript 就像 Car 之于 Carpet。
  • @RohitJain 可能是我听到的描述 Java 和 JavaScript 之间差异的最佳解释。
  • ...喜欢Ham and Hamster :)
  • 不应该允许非 ASCII 字符最好写成只允许 ASCII 字符

标签: javascript regex


【解决方案1】:

这应该可行:

var match = str.match(/^(?:(?![^\x00-\x7F"]).)+$/);

负前瞻用于确保每个字符不是非 ASCII 或 "

var match = str.match(/^(?:(?!")[\x00-\x7F])+$/);

负前瞻用于确保每个 ASCII 字符不是"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-14
    • 1970-01-01
    相关资源
    最近更新 更多