, , , , , 2257198. .
, : , , , , , , .
:
const wrap = (s, w) => s.replace(
/(?![^\n]{1,32}$)([^\n]{1,32})\s/g, '$1\n'
);
const wrap = (s, w) => s.replace(
new RegExp('(?![^\\n]{1,${w}}$)([^\\n]{1,${w}})\\s', 'g'), '$1\n'
);
, , [^\n], , 32 {1,32}. ^ , , , , :
str.replace(/([^\n]{1,32})/g, '[$1]\n');
// Matches wrapped in [] to help visualise
"[Lorem ipsum dolor sit amet, cons]
[ectetur adipiscing elit, sed do ]
[eiusmod tempor incididunt ut lab]
[ore et dolore magna aliqua.]
"
32 . , .
, {1,32} , , . - \b , \s . , , 1 :
str.replace(/([^\n]{1,32})\s/g, '[$1]\n');
// Matches wrapped in [] to help visualise
"[Lorem ipsum dolor sit amet,]
[consectetur adipiscing elit, sed]
[do eiusmod tempor incididunt ut]
[labore et dolore magna]
aliqua."
, , .
" " (\s|$) , , , , , . , , " ":
str.replace(/(?![^\n]{1,32}$)([^\n]{1,32})\s/g, '[$1]\n');
// Matches wrapped in [] to help visualise
"[Lorem ipsum dolor sit amet,]
[consectetur adipiscing elit, sed]
[do eiusmod tempor incididunt ut]
labore et dolore magna aliqua."