TransWikia.com

Удаление точки с конца строки при помощи регулярного выражения

Stack Overflow на русском Asked on November 27, 2021

У меня есть код, который разрешает пользователю ввод в поле input только числа, включая вещественные:

value.replace(/^D/, "").replace(/[^.,d]/g, '').match(/^d+(?:[.,]d{0,2})?|^d+/)[0]

Но он пропускает числа вида 1.x и 1,x, т.е где есть точка или запятая, но отсутствует дробная часть.

Буду очень благодарен если поможете пофиксить этот баг.

One Answer

Вы можете поступить следующим образом:

const processedValue = value
   .replace(/^D/, "")
   .replace(/[^.,d]/g, "")
   .replace(/.,$/, "")
   .match(/^d+(?:[.,]d{0,2})?|^d+/)[0]

Answered by Vasily on November 27, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP