将文本截断为少于 280 个字符,然后将不包括","的每个单词截断为少于 20 个字符



这是我的js更改

#tag1 #tag2 #thisisareallyreallyrealyylongtag3

tag1, tag2, thisisareallyreallyrealyylongtag3

它还将结果截断为 13 个单词。

var str9 = document.getElementById("hashtagsplain").innerHTML;
var resu9 = str9.replace(/^#|( #)/g, (_, m1) => m1 ? ", " : '');  
var truncatethen = resu9.split(" ").splice(0,13).join(" ").slice(0, -1);
document.getElementById("x").innerHTML = truncatethen;

我现在需要补充的是将整个文本截断为少于 280 个字符,然后将不包括","的每个单词(标签(的末尾截断为少于 20 个字符。

请问我添加什么以及在哪里进行添加?

更新。。

我已经通过添加 280 个字符的限制部分来消除

(/^(.{280}[^s]*).*/, "$1")

现在我的代码看起来像这样。

var str9 = document.getElementById("hashtagsplain").innerHTML;
var resu9 = str9.replace(/^#|( #)/g, (_, m1) => m1 ? ", " : '');  
var resu10 = resu9.replace(/^(.{280}[^s]*).*/, "$1");    
var truncatethen = resu10.split(" ").splice(0,13).join(" ").slice(0, -1);
document.getElementById("x").innerHTML = truncatethen;

我现在只需要弄清楚如何截断每个单词,不包括","少于 20 个字符,以便

notalldisabilitiesarevisible, notalldisabilitiesarevisable, notalldisabilities

成为

notalldisabilitiesar, notalldisabilitiesar, notalldisabilities

slicemap可以简化过程

var str9 = '#tag1 #tag2 #thisisareallyreallyrealyylongtag3 #notalldisabilitiesarevisible #notalldisabilitiesar #notalldisabilitiesar #notalldisabilities #tag1 #tag2 #thisisareallyreallyrealyylongtag3 #notalldisabilitiesarevisible #notalldisabilitiesar #notalldisabilitiesar #notalldisabilities #tag1 #tag2 #thisisareallyreallyrealyylongtag3 #notalldisabilitiesarevisible #notalldisabilitiesar #notalldisabilitiesar #notalldisabilities'
const textLength = 280;
const wordLength = 20;
var resu9 = str9.slice(1, textLength+1).replace(/#/g, ',');  
var truncatethen = resu9.split(',').map(str => str.slice(0, wordLength));    
truncatethen.forEach(str => console.log(str))

相关内容

  • 没有找到相关文章

最新更新