Algún patrón regex está rompiendo el motor de JavaScript regex
Escribí la siguiente expresión regular:/\D(?!.*\D)|^-?|\d+/g
Creo que debería funcionar de esta manera:
\D(?!.*\D) # match the last non-digit
| # or
^-? # match the start of the string with optional literal '-' character
| # or
\d+ # match digits
Pero no lo hace:
var arrTest = '12,345,678.90'.match(/\D(?!.*\D)|^-?|\d+/g);
console.log(arrTest);
var test = arrTest.join('').replace(/[^\d-]/, '.');
console.log(test);
Sin embargo, cuando lo juegas conPCRE(php)
-sabor en línea enRegex101. Funciona como lo describí.
No sé si creo que debería funcionar de una manera que no funciona. O si hay algún patrón no permitido en javascript regex-flavour.