正则表达式替换逗号后保留数字和数字末尾的符号

Regex replace keeping digits after comma AND the sign at the end of the number

我想替换逗号后前 2 位数字之后的所有字符,并在字符串末尾保留负号。

例如具有 1234,56789- 的字符串应该导致 1234,56-.

使用 (,\d{2}).* 并用 "$1-" 替换确实确实将所有内容保留到逗号后的 2 位数字,但它不会 keep/add 字符串末尾的减号.

我试过 (,\d{2}).*(-) 然后也用 "$1$2" 替换,但也没用。

如果要使用替换,可以使用(,\d{2})\d*并替换为</code></p> <ul> <li><code>(,\d{2}): 保留逗号和需要的两位数字

  • (?:\d*):忽略其他数字
  • https://regex101.com/r/dcObRO/2

    如果你有一个浮点数,最好对其进行分组并根据需要重写数字,如:

    ([0-9][0-9]*,[0-9][0-9])[0-9]*([-+])?
    ^ 1st group   two digits      ^ 2nd group (optional)
    

    然后你可以把它转换成

    
    

    如图所示demo