gpt4 book ai didi

JavaScript:获取句子中的单词及其索引

转载 作者:行者123 更新时间:2023-12-04 02:29:35 25 4
gpt4 key购买 nike

我需要从一个句子中获取所有单词以及它们在句子中的索引位置。同一个词可以在句子中出现多次。
我试图使用 filter 方法执行此操作,但索引指示数组中的位置而不是句子中的位置。

var sentence = "This is a short sentence, a demo sentence."

sentence.split(" ").filter((word, index) => {

}

最佳答案

您可以使用.reduce :

const sentence = "This is a short sentence, a demo sentence.";
let index = 0;
const nonAlphabeticWithoutSpace = /[^a-zA-Z ]/g;

const res = sentence.split(" ").reduce((acc, item) => {
// get word without other characters
const word = item.replace(nonAlphabeticWithoutSpace, "");
// get prev indices of this word
const wordIndices = acc[word];
// create/update the indices list
acc[word] = wordIndices ? [...wordIndices, index] : [index];
// increment the index
const nonAlphabetic = item.match(nonAlphabeticWithoutSpace);
index += nonAlphabetic
? word.length+nonAlphabetic.length+1
: word.length+1;
return acc;
}, {});

console.log(res);

如果您想忽略大小写,请使用 .toLowerCase() .

关于JavaScript:获取句子中的单词及其索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65170408/

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