Javascript 有可能做一个脚本,在每一个合适的词后,它进入一个段落?

Javascript 有可能做一个脚本,在每一个合适的词后,它进入一个段落?,javascript,html,css,paragraph,Javascript,Html,Css,Paragraph,我真的需要一个脚本,可以做我的工作更容易,因为我与许多词的工作 我希望这个脚本在我的段落中放置最多的单词,每次段落中的单词达到5,脚本将进入一个新的段落 假设我有这11个单词。 苹果桌椅房电脑瓶笔窗花船盒 我想让我的剧本这样安排 苹果桌椅屋电脑 瓶笔窗花船 盒子 希望你得到它 如果我把14个字放在这里 苹果桌椅房电脑瓶笔窗花船盒按钮鼠标本 苹果桌椅屋电脑 瓶笔窗花船 盒式按钮鼠标书 然后我会把16 苹果桌椅房电脑瓶笔窗花船箱按钮鼠标簿日历线 苹果桌椅屋电脑 瓶笔窗花船 框键鼠标书本日历 电缆 如

我真的需要一个脚本,可以做我的工作更容易,因为我与许多词的工作

我希望这个脚本在我的段落中放置最多的单词,每次段落中的单词达到5,脚本将进入一个新的段落

假设我有这11个单词。 苹果桌椅房电脑瓶笔窗花船盒

我想让我的剧本这样安排

苹果桌椅屋电脑 瓶笔窗花船 盒子

希望你得到它

如果我把14个字放在这里 苹果桌椅房电脑瓶笔窗花船盒按钮鼠标本

苹果桌椅屋电脑 瓶笔窗花船 盒式按钮鼠标书

然后我会把16

苹果桌椅房电脑瓶笔窗花船箱按钮鼠标簿日历线

苹果桌椅屋电脑 瓶笔窗花船 框键鼠标书本日历 电缆


如果可能的话,如果有人能帮助我,我会非常高兴的。我必须说我不是程序员,但如果有人给我这个脚本,我肯定知道如何使用它。

有更复杂的解决方案,如正则表达式或函数,但请尝试这个简单的解决方案

var text='苹果桌椅屋电脑瓶笔窗花船盒';
var myarray=text.split(“”);
变量词=文本。拆分(“”)。长度;
var colwords=[];
风险值计数从0到5=0;
for(var i=0;i”;
计数_至_5=0;
colwords=[];
} 
数到5++;
}

使用JavaScript,您可以匹配这样的单词
\w+
,它将匹配任何连续字母、数字或下划线序列。另外,
\s*
将匹配一个或多个连续空格。所以
\w+\s*
匹配一个单词,而
\w+\s*{5}
匹配5个单词。我们使用
$1
捕获这个由5个单词组成的字符串,并在其末尾添加一个新行
\n

var string=“苹果桌椅房电脑瓶笔窗花船箱按钮鼠标书日历线”;
var newString=string.replace(/(\w+\s*){5})/g,“$1\n”);

console.log(新闻字符串)这是一种根据需要剪切字符串的解决方案

<!DOCTYPE html>
     <html>
       <head>
          <title>Page Title</title>
              </head>
        <body>
        <div id="stuff">a reallly really really long titleasdfasd fasdfasdfasdfasdfasdfadsf</div> 
        <script>
              function cutToString(id, Lenth){    
                var text = document.getElementById(id).innerHTML;
                var charsToCutTo = Lenth;
                  if(text.length>charsToCutTo){
                  var strShort = "";
                      for(i = 0; i < charsToCutTo; i++){
                         strShort += text[i];
                  }
                  document.getElementById(id).title = "text";
                  document.getElementById(id).innerHTML = strShort + "...";
               }            
         };

        cutToString('stuff', 40); 
    </script>

   </body>
 </html>

页面标题
一个很长很长的标题
函数裁剪(id,Lenth){
var text=document.getElementById(id).innerHTML;
var charsToCutTo=长度;
if(text.length>charsToCutTo){
var strShort=“”;
对于(i=0;i
其中剪贴是使用“ID”和字符串长度传递文本的功能

查看此资源,了解您希望函数如何工作。我建议将名为whitespaces的计数器设置为0,并运行循环,检查字符串中是否有空格字符。每当出现第5个空格时(检查mod 5),在该位置的字符串中添加“\n”字符并继续


我真的很想建议在提问之前更彻底地搜索。希望这有帮助

如果您确实想插入p标记,而不是仅仅插入一行新行,您可以尝试以下方法:

var container=document.getElementById('container');
//获取文本内容
var text=container.innerText | | container.textContent;
//按空格、任意数量的空格拆分文本
var words=text.split(/\s+/);
//清空容器
container.innerHTML=“”;
words.forEach(函数(单词、索引){
如果(索引%5==0){//如果当前索引是5的倍数
p=document.createElement(“p”);
容器。附加(p);
}
p、 innerHTML+=word+“”;
});

苹果桌椅房电脑瓶笔窗花船箱按钮鼠标书日历线
var your_text=“苹果桌椅屋电脑瓶笔窗花船”;
var newtext=your_text.replace(/((\w+\w+\s*){5})/ig,“$1\n”);

log(newtext)
虽然我们真的很喜欢,但您可以尝试添加解决方案的尝试。你也可以看看这里:我不知道你想说什么。我真的不知道这是否可能,但我想象一个函数,比如:if words=5在段落中->插入新段落等等。除此之外,我真的无能为力:(还有,我在那个区域搜索了一下,没什么帮助。一些问题:这些词是从哪里来的?它们是在一个有特殊标记的html页面中,还是在一个你喜欢格式化它们的文本区域中,或者只是一个应该在html中呈现以供输出的数组中?嗨,欢迎这样做。如果你已经为此编写了代码,但你无法开始工作,请不要当您到达正确的位置时。只需将代码的相关部分添加到其中。您需要展示您自己的努力,因为堆栈溢出不是“为我编写代码”服务。请参阅。您永远不会到达循环的终点。@NinaScholz Jupfix,现在检查它。这听起来比我想要的要简单,但它真的能帮助我吗复制和粘贴成千上万的单词?是的,大小应该无关紧要,只要你正确地设置样式,它只会影响它在“DOM”(文档对象模型)中的显示方式。无论如何,因为所有的解决方案都会让你检查整个字符串