У меня есть поле ввода, к которому я привязал функцию форматирования, которая срабатывает всякий раз, когда поле теряет фокус.
Я стремлюсь к тому, чтобы удалить все начальные нули из ввода, и я сделал это. добиться этого с помощью следующей строки. Однако, когда пользователь хочет ввести один 0 или что-то вроде 0000, я все же хочу, чтобы это поле заканчивалось значением 0 (одиночным). С .replace(/^0+/, '')
он удалит каждый ноль и вернет просто пустую строку. Кто-то знает, какое регулярное выражение может с этим справиться?
const formatNumber = ($field) => {
var number = $field.val().replace(/\./g, '').replace(/\s/g, '').replace(/^0+/, '');
return number;
};
note : if(number === "") number = "0"
не вариант.
edit1: : я заметил там, кажется, немного путаницы. Например, «0009825» должно стать 9825, а не 09825. Единственный случай, когда я хочу, чтобы 0 был в начале, это когда значение просто равно нулю.