Regex将字符串拆分为大小适中的块

Regex to split string into verying size chunks

本文关键字:字符串 拆分 Regex      更新时间:2023-09-26

我试图将一个字符串分成不同大小的块,创建一个单词的"波浪",例如:

          the
        cat sat
     on the mat the
  cat sat on the mat the
     cat sat on the
        mat the
          cat

由于单词的长度各不相同,我想在最近的空格上拆分。

我可能想用一句台词做太多了。然而,我不喜欢循环的想法。我从这个开始:

/.{5}'w*/g

我试过四处添加()和添加{},但无法完全掌握正则表达式的窍门。这样做可能吗?还是会有某种循环?

我认为即使使用正则表达式也可以完成一些事情,但这在很大程度上取决于输入字符串。此外,你还必须考虑如何排列区块,是否修剪,如何填充等等,所以仅仅使用正则表达式是不行的。

此正则表达式模式:((?:[^'s]+(?:'s|$)){1,20})可以产生与您在以下字符串中查找的内容类似的内容:CCD_ 2。它之所以有效,是因为在应该发生故障的地方有额外的空间。

the 
cat sat 
on the mat the 
cat sat on the mat the 
cat sat on the 
mat

请参阅演示。