gpt4 book ai didi

javascript - 在最多 X 个单词后拆分文本

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:25:04 25 4
gpt4 key购买 nike

我一直在努力寻找解决问题的方法,但很高兴与大家分享。这是问题所在:

我有一段文字,它可能包含任何类型的标点符号。我想把它分成两部分:

  1. 最多 X 个字
    • 包括附在最后一个单词上的标点符号,例如点或逗号
  2. 文末
    • 从两部分之间的间距开始

这里有一些例子:

str = "one two, three, quatro 5! : six sept  ocho nine 10!"

splitAfterXWords(str, 2)
// ["one two,", "three, quatro 5! : six sept ocho nine 10!"]

splitAfterXWords(str, 5)
// ["one two, three, quatro 5!", " : six sept ocho nine 10!"]

splitAfterXWords(str, 20)
// ["one two, three, quatro 5! : six sept ocho nine 10!", ""]

splitAfterXWords(str, 6)
// ["one two, three, quatro 5! : six", " sept ocho nine 10!"]

最佳答案

这是一个完成工作的函数:

function splitAfterXWords(to_split, words){
regex = new RegExp("(([\\s;:!,.?\"'’]*[^\\s]+){" + words + "})(.*)")
result = regex.exec(to_split)
return result ? [result[1], to_split.substr(result[1].length)] : [to_split, '']
}

您可以看到它在 this fiddle 上工作.

欢迎改进和评论!

关于javascript - 在最多 X 个单词后拆分文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19517228/

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