Reg表达式验证/ \#&人物

时间:2013-08-02 16:32:37

标签: regex

我一直在学习正则表达式如何工作,这对我来说非常棘手。我想从输入字段验证下面的字符。基本上,如果字符串包含任何这些字符,alert('bad chars')

  1. /
  2. \
  3. &安培;
  4. 我找到了这段代码,但是当我改变它时似乎没有用。如何更改此代码以满足我的需求?

    var str = $(this).val();
    if(/^[a-zA-Z0-9- ]*$/.test(str) == false) {
        alert('bad');
        return false;
    } else {
        alert('good');
    }
    

2 个答案:

答案 0 :(得分:1)

您可以尝试以下方法:

if("/[\\/#&]/".test(str) == true) {
    alert('bad');
    return false;
} else {
    alert('good');
}

注意:我不是100%在JavaScript与.NET正则表达式中需要转义的字符,但基本上,我说如果你的字符串包含任何字符{ {1}},\/#,然后提醒'不好'。

答案 1 :(得分:1)

/^[a-zA-Z0-9- ]*$/表示以下内容:

  • ^字符串必须从这里开始
  • [a-zA-Z0-9- ] az大写或小写之间的字母,09之间的数字,短划线(-)和空间。
  • *重复0次或以上
  • $字符串必须在此结束。

如果是“任何字符”,您可以像^一样使用/^[^\/\\#&]*$/^。如果匹配为true,则它没有任何这些字符。 [意味着匹配任何不属于以下内容的之后的{{1}}。