如何在jquery中获取字符串中的无效字符的所有值?

时间:2016-08-12 07:58:14

标签: javascript jquery regex

我有一个jquery方法检查特殊字符,如下所示:

function checkForSpecialChar(val) {

    if (val != 0 && /^[a-zA-Z0-9- ]*$/.test(val) == false) {

        return false;
    }

return true;
}

这正常,因为它正确验证了值。

但是现在我需要获取val字符串的所有无效字符并将其显示给用户。

例如if val is = 123gdf$£! 它应该只获得$£!的无效字符。

请知道我该怎么做?

提前感谢您的帮助。

3 个答案:

答案 0 :(得分:2)

只需在^

中添加[]即可反转您的正则表达式
[^a-zA-Z0-9- ] // match anything that is not alphanumerical, `-` or whitespace 



alert(
  'Invalid characters of "123gdf$£!": '
  + (
    '123gdf$£!'.match(/[^a-zA-Z0-9- ]/g)
      .join('')
  )
);




答案 1 :(得分:0)

答案 2 :(得分:0)

只需使用javascript的字符串匹配()方法即可。

这是:

var val= "123gdf$£!";
var result= str.match(/^[a-zA-Z0-9- ]*$/);

结果将是一个包含值的数组。