String.prototype.replace()
and a regular expression to insert a given break character at the nearest whitespace of max
characters.br
, to use the default value of '\n'
.const wordWrap = (str, max, br = '\n') => str.replace( new RegExp(`(?![^\\n]{1,${max}}$)([^\\n]{1,${max}})\\s`, 'g'), '$1' + br );
wordWrap(
'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce tempus.',
32
);
// 'Lorem ipsum dolor sit amet,\nconsectetur adipiscing elit.\nFusce tempus.'
wordWrap(
'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce tempus.',
32,
'\r\n'
);
// 'Lorem ipsum dolor sit amet,\r\nconsectetur adipiscing elit.\r\nFusce tempus.'
Subscribe to get resources directly to your inbox. You won't receive any spam! ✌️