Как отбросить все нули в любом формате regex - PullRequest
1 голос
/ 29 октября 2019

Я почти решил свою проблему, но мне кажется, что я забыл или потерял одного персонажа. Я хочу отклонить значение нуля, включая этот формат 0,00.

^((?!0+$)\d+)(\.0{2})$

My Regex

Сначала я хотел отклонить только нулевое значение, затем я написал ^(?!0+$)\d+$ Затем у меня есть еще одно требование принять только xxx.00этот формат. две цифры десятичные. И закончился как ^((?!0+$)\d+)(\.0{2})$ Он отклоняет число, отличное от формата .00, но принимает 0,00. Я отрицал ноль в первой группе, но почему регулярное выражение принимало его?

0 //false
9 //false
1000.00 //true
.00 //false
10.00 //true
434543.12 //false
324.00 //true
40000 //false
0.00 //should be false but mine is true
000.00 //should be false but mine is true

Я пытался перегруппировать и переместить, но ничего не получалось.

1 Ответ

4 голосов
/ 29 октября 2019

Звучит так, как если бы вы могли просто использовать

^[1-9]\d*\.00$

См. Ваше обновленное демо на regex101

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...