I am trying to replace the last number of each match in between parenthasees.
so if i had cos(3 * 3)
before this regex
result = result.replace(/\d+(?:\.\d+)?/g, x => `${x}deg`)
would turn cos(3 * 3) into cos(3deg * 3deg) I need only the last number to be changed to deg so if I had cos(3 * 3) + cos(3 * 2) it would be cos(3 * 3deg) + cos(3 * 2deg)
what regular expression magic could I use to do this.
>Solution :
You can simply use the closing braces to replace like this:
var result = "cos(3 * 3) + cos(3 * 245)"
result = result.replace(/(\d+)(\))/g,'$1deg)')
console.log(result)
Or just replace the last bracket.
var result = "cos(3 * 90) + sin(3 * 2)"
result = result.replace(/\)/g,'deg)')
console.log(result)
With Decimal add a character class using
[]for.and digits
var result = "cos(3 * 3.4) + cos(3 * 245.5)"
result = result.replace(/([\d\.]+)(\))/g,'$1deg)')
console.log(result)