我正在使用最终要通过Twitter bot发推的字符串的Javascript环境。问题是,有时该字符串是两个短句子,有时是几个非常长的句子。
我正在使用的示例字符串:
短的:
“ Blah foo。没有那么多foo。”
长:
“很多foo。那么多foo。这是不可能的,这个foo不能放入一条tweet中。此tweet中的字符需要制成多条tweet。实际上,有189个字符。”
我还添加了开头和结尾,因此最终看起来像这样:
短的:
“今天:Blah foo。没有那么多foo。#hashtag”
我希望将长度超过140的字符串分成几条推文。
长鸣叫1:
“今天:很多无聊的foo。那么多的foo。没有办法使这个foo能够适合一条推文。#hashtag”
长鸣叫2:
“此推文中的字符需要做成多个推文。实际上,有189个字符。#hashtag”
从我的角度来看,我可以string.split()
将整个字符串分成一个句子数组并遍历它们以构建每个tweet,或者可以使用Regex选择长字符串并将其拆分为多个140个以下字符的字符串。
哪种方法更有效?我认为这将是Regex选项。我将如何实施该解决方案?
一个幼稚但简单的方法将是一个正则表达式
/.{1,140}\./g
例子:
text = "Lots of blah foo. So many foo. There is a no way that this foo would fit in one tweet. The characters in this tweet need to be made into a multiple tweets. In fact, there are 189 characters."
m = text.match(/.{1,140}\./g)
for (let tweet of m)
console.log(tweet, tweet.length)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句