javascript - javascript 中带有 .match(regex) 的 If 语句不拾取空格

标签 javascript regex if-statement

大家好,我正在尝试检查用户输入字符串是否包含空格。我正在使用http://regexr.com/检查我的正则表达式是否正确。仅供引用,正则表达式新手。看来是正确的。

但是不行,即使有空格,值仍然会被返回。我的 if 语句有问题吗?还是我错过了正则表达式的工作原理。

 var regex = /([ ])\w+/g;
 if (nameInput.match(regex)||realmInput.match(regex)) {
     alert('spaces not allowed');
 } else {
     //do something else 
 }

提前致谢

最佳答案

此正则表达式 /([ ])\w+/g 将匹配包含空格后跟任意数量的“单词字符”的任何字符串。例如,这不会捕获字符串末尾的空格,后面没有任何内容。

尝试使用 /\s+/g 代替。它将匹配至少一个空格(包括制表符)的任何出现。

更新:

如果您只想匹配一个空格,则可以这样做://g。没有真正需要方括号和圆括号,而且由于一个空格就足够了,即使 g 标志也有点过时了,它可能只是 //

关于javascript - javascript 中带有 .match(regex) 的 If 语句不拾取空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34937055/

相关文章:

javascript - 如何捕获 saveChanges 上的错误 - Google 应用制作工具

python - 正则表达式总是匹配最后一个组子句

regex - 使用 Grep 和 Regex 在一行中搜索多个匹配项

if-statement - IF 函数 - 重新格式化组件

Excel 嵌套 IF 语句与各种文本条件

javascript - TypeScript - 如何继承类和覆盖 lambda 方法

javascript - 将脚本传递给 innerHTML

javascript - jQuery 隐藏所有没有类的元素

javascript - Uncaught ReferenceError : show value is not defined(Only for mobile device)

python - 已验证多行正则表达式在 notepad++ 中有效,但在 python 中没有结果