const regex = /^(<[^>]*>)*((?:\w+\W+){35})\w.*$/s;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('^(<[^>]*>)*((?:\\w+\\W+){35})\\w.*$', 's')
const str = `<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas vehicula lorem magna, sed commodo neque hendrerit eu. Aliquam vulputate tellus a tellus congue iaculis. Integer sit amet gravida leo. Ut hendrerit, massa non rutrum fringilla, justo sem sodales velit, vitae ornare odio mauris sed dui. Duis suscipit posuere neque vel gravida. Nam ullamcorper, justo maximus pretium iaculis, ipsum elit hendrerit turpis, eu convallis leo magna vitae neque. Praesent interdum eget quam quis ultricies.</p>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas vehicula lorem magna, sed commodo neque hendrerit eu. Aliquam vulputate tellus a tellus congue iaculis. Integer sit amet gravida leo. Ut hendrerit, massa non rutrum fringilla, justo sem sodales velit, vitae ornare odio mauris sed dui. Duis suscipit posuere neque vel gravida. Nam ullamcorper, justo maximus pretium iaculis, ipsum elit hendrerit turpis, eu convallis leo magna vitae neque. Praesent interdum eget quam quis ultricies.</p>`;
const subst = `$2`;
// The substituted value will be contained in the result variable
const result = str.replace(regex, subst);
console.log('Substitution result: ', result);
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for JavaScript, please visit: https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions