如何做一个string.match条件

时间:2018-05-07 08:17:34

标签: javascript typescript

我想从一个字符串中存储一个数组中的21个字符。 我的问题是,当我正在写一个段落时,它就像这样切断了这个词。

    let string = "This is a new paragraphe that i'm writing to you" //  48 chars and 10 words
    let lines = string.match(/.{1,21}/g)
    console.log(lines) //  ["This is a new paragra", "phe that i'm writing ", "to you"]

我希望它看起来像这样[“这是一个新的”,“我是”的“paragraphe”,“写给你”] 并且不要削减这个词。

1 个答案:

答案 0 :(得分:2)

使用\b锚点定义单词边界,然后设置:



let string = "This is a new paragraphe that i'm writing to you";

let lines = string
  .match(/\b.{1,21}\b/g)
  .map(line => line.trim());
  
console.log(lines);