const regex = /([+-]?(?:(?:\d+\.?\d*\*?[xX]\^\d+)|(?:\d+\.?\d*\*?[xX])|(?:[xX]\^\d+)|(?:[xX])|(?:\d+\.?\d*)))/g;
// Alternative syntax using RegExp constructor
// const regex = new RegExp('([+-]?(?:(?:\\d+\\.?\\d*\\*?[xX]\\^\\d+)|(?:\\d+\\.?\\d*\\*?[xX])|(?:[xX]\\^\\d+)|(?:[xX])|(?:\\d+\\.?\\d*)))', 'g')
const str = `-5.0x^5 + 20x^4 +x^3 + x +2
5*x^4 + 2.5*x + 3`;
const subst = ``;
// 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