我想制作一个if语句:
if(playerMessage == specificallyOnlyTwoWords) {
// do something
}
这意味着,例如,当“ playerMessage”的值为“ Fruit Ninja”时,它将在if语句中执行代码,但是如果变量的值为“ Great Fruit Ninja”,则在如果语句将不会运行。
两个单词是一个用空格或分隔的单词
如果可能,请注意标点符号将不胜感激。 “标点符号”是不是字母的任何字符。例如:A
是字母,;
是标点符号
我正在使用JavaScript。
答案 0 :(得分:2)
这是一种简单的方法。计算空格的全局匹配数,如果只有一个,则返回true。
var strings = ['two words','one more word', 'a bunch of words']
strings.filter(str => {
console.log(str.match(/\s/g).length === 1)
})
答案 1 :(得分:2)
您可以使用non-word characters
在\W
上进行拆分,然后可以测试拆分后的字符串的长度:
let strs = ['Hello, Johnny', 'Hello,Johnny', 'Hello Johnny', 'Hello \n World', 'Hello World']
strs.forEach(str => console.log(str, str.split(/\W/).length === 2))
console.log('-- Trim Witespace ---')
// Replace extra whitespace
strs.forEach(str => console.log(str, str.replace(/\s\s+/g, ' ').split(/\W/).length === 2))
答案 2 :(得分:1)
if (playerMessage.split(/\W+/).length === 2) {
// do something
}
它将忽略不是字母的所有内容。