gpt4 book ai didi

Javascript如何检查字符串中是否存在单词

转载 作者:行者123 更新时间:2023-11-30 07:54:23 24 4
gpt4 key购买 nike

我想检查字符串中是否存在某个单词。我尝试使用 search() 函数,但它也会计算包含搜索词的词数。例如,让我的字符串是

var str = "This is a pencil.";

当我搜索"is"时

str.search("is");

给出 2 而我想得到 1 应该只是“is”,而不是“This”。我怎样才能做到这一点?

提前致谢...

最佳答案

嗯,看来您想搜索整个单词,而不是字符串。

这是一种应该足够的方法(尽管不是完全证明)。

根据空格或标点符号将字符串拆分为标记,这应该会为您提供一个单词列表(可能包含一些空字符串)。

现在,如果你想检查你想要的单词是否存在于这个单词列表中,你可以使用 includes列表中的方法。

console.log(
"This is a pencil."
.split(/\s+|\./) // split words based on whitespace or a '.'
.includes('is') // check if words exists in the list of words
)

如果您想要计算特定单词的出现次数,您可以过滤此列表以查找您需要的单词。现在,您只需计算此列表的长度即可得到计数。

console.log(
"This is a pencil."
.split(/\s+|\./) // split words based on whitespace or a '.'
.filter(word => word === 'is')
.length
)

这种方法还应该处理字符串开头或结尾的单词。

console.log(
"This is a pencil."
.split(/\s+|\./) // split words based on whitespace or a '.'
.filter(word => word === 'This')
.length
)

或者,您也可以将单词列表减少为出现的次数

console.log(
"This is a pencil."
.split(/\s+|\./) // split words based on whitespace or a '.'
.reduce((count, word) => word === 'is' ? count + 1 : count, 0)
)

关于Javascript如何检查字符串中是否存在单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44010172/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com