JSFiddle - React, Tailwind, and code Playground
JavaScript
let parenth = 0;
const str = `thisIsA100CharactersLong:SampleStringContaining-SpecialChar[1-300]10&20*`,
spaced = str.replace(/[A-Z]|\d+|\W/g, (m) => {
if (/[({[]/.test(m)) {
parenth = 1;
return m;
}
if (parenth || /[)}\]]/.test(m)) {
parenth = 0;
return m;
}
return ` ${m}`;
});
console.log(spaced);