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
, т.е где есть точка или запятая, но отсутствует дробная часть.
Буду очень благодарен если поможете пофиксить этот баг.
Вы можете поступить следующим образом:
const processedValue = value
.replace(/^D/, "")
.replace(/[^.,d]/g, "")
.replace(/.,$/, "")
.match(/^d+(?:[.,]d{0,2})?|^d+/)[0]
Answered by Vasily on November 27, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP