Если вы хотите проверить, не является ли первое значение значения нулевым, вы можете просто сделать подстроку:
Inputvalue.substr(0,1) !== '0'
Если вы хотите заменить все начальные нули:
Inputvalue.replace(/^0+/, '');
^
означает, что «строка начинается с», затем «один или несколько» (+
) нулей.
Если вы хотите, чтобы все ведущие нули были перед ди git ( \d
) заменено:
Inputvalue.replace(/^0+\d/, '');
^
означает «строка начинается с», затем «один или несколько» (+
) нулей.
Если вы хотите получить первый ди git после нулей:
Символ ^
означает «начало строки». Вы говорите, что это может быть 000001
, 1
не в начале строки, так что это никогда не будет совпадать.
Я считаю полезным определить, что я хочу в тексте:
- Я хочу первый ди git, только один ->
[1-9]
- Начинается с (
^
) с одним или несколькими (+
) нулей -> ^0+
В результате получается ^0+[1-9]
.
Мы хотим сохранить только di git, поэтому поместим его в группу: ^0+([1-9])
const examples = [
'123', // no starting zeroes
'0123', // match
'000123', // match
'132000123', // no matching zeroes, dont match the end either!
];
console.log(examples.map(function (example) {
const matches = example.match(/^0+([1-9])/);
return example + ' -> ' + (matches !== null ? matches[1] : 'no match!');
}));