此问题在此处已有答案:
How can I match a whole word in JavaScript?(4个答案)
11天前关闭。
我们有这个字符串:
const baseReference = 'they can fix a spinal if you got the money';
字符串
如果我们想检查字符串是否包含单词或短语,我们可以简单地执行:
1) baseReference.includes('spinal'); // returns true
2) baseReference.includes('got the money'); // returns true
型
问题是includes
方法不尊重单词,所以这个方法也返回true
:
3) baseReference.includes('spin'); // returns true but there is no word as spin in the string
型
我想使用includes方法来检查字符串是否包含短语,但相对于每个单词,因此我们得到以下结果:
1) baseReference.includes('spinal'); // should returns true
2) baseReference.includes('got the money'); // should returns true
3) baseReference.includes('spin'); // should returns false because we don't have spin as a word in the sring
型
我尝试使用split(' ')
将字符串转换为单词,然后使用filter
检查是否包含匹配,但使用我的方法,我不能检查像got the money
这样的短语,对吗?
你会怎么做
2条答案
按热度按时间kadbb4591#
你可以使用regex
test
方法,这样你就可以在开始和结束时指定断字,如下所示:字符串
如果要搜索的文本是动态的(你在变量中有它),那么像这样构造RegExp对象:
型
uinbv5nw2#
在 @trincot 的答案的基础上,您可以进一步在String类原型中创建一个函数,该函数允许您从字符串本身执行测试,类似于
String.includes()
。字符串