gpt4 book ai didi

javascript - 根据数组的长度将字符串拆分为单词

转载 作者:行者123 更新时间:2023-11-29 23:50:21 26 4
gpt4 key购买 nike

我有一些文字。

text = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do 
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
aliquip ex ea commodo consequat.'

我如何根据另一个数组的长度拆分它。

array = 'sed do'

我试过:

alength = array.split(" ").length;
array2 = candidate.match('\/((?:(?:\\S+\\s){'+alength+'})|(?:.+)(?=\\n|$))\/g');

返回 null。

我希望得到的是:

array 2 = 'Lorem ipsum','dolor sit',...'commodo consequat'

我可以使用另一种 String 方法吗?

最佳答案

我喜欢使用正则表达式,但是一旦开始动态构建正则表达式,事情就会开始变得困惑,所以我会考虑另一种方法。例如,您可以将原始字符串拆分为单独的单词,然后根据需要将它们分组。易于理解和维护:

function getPhrases(text, wordsPerPhrase) {
var words = text.split(/\s+/)
var result = []
for (var i = 0; i < words.length; i += wordsPerPhrase) {
result.push(words.slice(i, i + wordsPerPhrase).join(" "))
}
return result
}

text = `Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
aliquip ex ea commodo consequat.`

console.log(getPhrases(text, 9))
console.log(getPhrases(text, 5))
console.log(getPhrases(text, 2))

注意:如果您不想在输出中使用标点符号,您可以在函数的第一行添加这样的内容:

text = text.replace(/[^a-z'\s]/gi,'')

关于javascript - 根据数组的长度将字符串拆分为单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42894990/

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