在 javascript 中查找非单词、非空格和非连字符

Finding non-word, non-space, and non-hyphen in javascript

本文关键字:空格 连字符 单词 查找 javascript      更新时间:2023-09-26
这是一个

非常愚蠢的问题,但对于我的生活,我找不到一种简单的方法来在javascript中做到这一点。

如果字符串有"abcdefgh",这应该返回 false(未找到错误(

但是,如果字符串具有无效字符(如"@$$"(,则应返回 true(发现错误(。

因此,一般规则是,如果它包含非单词、非空格和非连字符,则应返回 true 以指示错误。

我尝试了(/'W'D'S/).test('hello!'),由于"!",它应该返回 true(发现问题(,但它仍然返回 false。

非常感谢!

在你当前的正则表达式中,你不是在寻找任何这些东西 - 你是在连续寻找所有三个。

此外,'D并不意味着"非连字符",它的意思是"不是数字"。

您想搜索与白名单不匹配的任何内容:

(/[^'w's'-]/).test('hello!')       // true
(/[^'w's'-]/).test('hello')        // false
(/[^'w's'-]/).test('hello-there')  // also false
这可能

适用于/[^'w's-]/
当行不包含任何单个非单词、空格或连字符时返回 true。