Мне понадобится регулярное выражение, которое допускает только числа, пробелы, десятичные числа с точностью до 2 и знак &.
Это регулярное выражение будет использоваться для проверки ввода, который допускает наличие нескольких чисел, разделенных знаком &, и между ними может быть пробел (необязательный, но максимальный). Вот что я попробовал, из-за моего плохого понимания в регулярных выражениях, они работали так плохо.
^(?=.*[0-9])[ &.0-9]+$
но это не очень хорошо работает.
потому что такие вещи, как &&&&&& 1, пройдут проверку.
тоже пробовал такие вещи, которые тоже так плохо работают
^([0-9]{1,}[.]{0,1}[0-9]{0,2}[ ]{0,1}+[&]{0,1}[ ]{0,1})*?$
Следующее иллюстрирует то, что я ожидал
12 ---> (пас)
12.12 ---> (pass)
12 & 129.12 & 11 ---> (pass)
12 & 129. & 11 ---> (не должно пройти)
12 & .129 ---> (не должно пройти)
12 и 129..1 (не должно пройти)
12 и 129.111 (не должно пройти)
&&& 1 (не должно пройти)
.......
Большое спасибо заранее