首页 > 解决方案 > 如何拆分带有任意参数的字符串?

问题描述

我正在努力解决一个非常简单的问题。

lines = "hogefoobarwai"

我想把这个字符串剪成 4 个字符。

像这样。

hoge, foob, arwa, i

怎么拆分?

我尝试将 split() 与正则表达式一起使用。

let vars = lines.match(/.{4}/g);

这很好。但是如果像 {4} 这样的东西是可变的,它就行不通了。

例如

 length = 6

let vars = lines.match(/.{length}/g);

这从字面上显示/.{length}/

如果有人能告诉我它是什么,请告诉我。

标签: javascript

解决方案


您可以采用最小长度 1(用于获得更小的子字符串)和长度并构建一个新的正则表达式。

const
    lines = "hogefoobarwai",
    length = 4,
    parts = lines.match(new RegExp(`.{1,${length}}`, 'g'));

console.log(parts);


推荐阅读