Задача довольно простая, но хорошего решения я пока не придумал: строка может содержать числа, тире и плюсы или только числа.
^[0-9+-]+$
делает большую часть того, что мне нужно, за исключением случаев, когда пользователь вводит мусор, например "+-+--+"
Мне не повезло с обычным просмотром вперед, поскольку тире и плюсы потенциально могут быть где угодно в строке.
Допустимые строки:
- 234654
- 24-3+-2
- -234
- 25485+
Неверный:
- ++--+