Эта регулярка не запрещает ввод других символов, а как запретить?
olya_097, еще раз здравствуйте. Ваш вопрос слегка не полон, поэтому попробую догадаться в чем дело.эта регулярка не запрещает ввод других символов
Догадка: видимо Вы используете какую то библиотеку/плагин в котором можно задавать с помощью регулярки фильтр вводимых данных для полей вода типа input и textarea.
Если это так, то хотелось бы узнать что это за библиотека/плагин и тогда возможно понять в чем причина.
Если же Вы пользуетесь обычным input и/или textarea и при этом не используете никаких библиотек/плагинов, расширяющих их функционал, то скорее всего вы имеете небольшой самописный кусок js кода, который через регулярку проверяет введенный текст (или вводимый текст) и что то там дальше делает. Если это так, то хотелось бы увидеть этот кусок кода вместе с частью разметки, включающей в себя контролируемые кодом поля ввода и тогда, я уверен, мы сможем Вам помочь разобраться с решением Вашего вопроса.
Вы неверно понимаете работу регексов. Любой регекс, не содержащий символа начала и конца строки можно расширить без изменения функциональности:
/.*\d+.*/
(т.е. до и после Вашего регекса я дописал ".*", означающее "что угодно").
Иными словами, Ваш регекс требует наличия хотя бы одного дигита (цифры); но не запрещает иных символов до и после него.
Мне кажется, Вам нужно так:
/^\d+$/
(мои добавления во всех случаях я выделил болдом).