Я хочу написать регулярное выражение для сопоставления всех положительных двойных чисел с максимум 2 цифрами после десятичной точки.
Мой первый подход был такой:
^\\d+(?:\\.\\d{1,2})?$
в большинстве случаев работает нормальноно не для научных обозначений, например 10000000
, когда оно написано как 1.0E7
.
. Я нашел ответ здесь и адаптировал его к своему случаю, получив в результате:
[\\s=]+([+]?(?:0|[1-9]\\d*)(?:\\.\\d*)?(?:[eE][+\\-]?\\d{1,2}))$
но теперь он возвращает ложь для большого количества "хороших" значений.
Любая идея, как сделать так, чтобы он совпадал только с положительными числовыми значениями с 0 до 2 цифрами после десятичной точки, но такженаучная запись чисел?