var regExpress = "/^([a-zA-Z0-9\!\@\#\$\%\^\&\*\(\)\-\+\=\|\}\{'\"\;\:\?\/\.\,\s]*)/i";
if (strMessage.search(regExpress) == -1) { alert("error occurs"); }
Я хочу разрешить почти все символы. Я хочу использовать его из-за некоторой проблемы с форматированием из другого приложения. Поэтому всякий раз, когда пользователь режет и вставляет из другого приложения, , он вызывает добавление какого-то странного персонажа, который мне нужно позаботиться об этом. Но каждый раз, когда я возвращаю -1, это неверно.javascript регулярное выражение, что я делаю неправильно?
Что не так в этом регулярном выражении?
Вы являетесь * массовым * чрезмерным побегом. Это бессмысленно избегать каждого персонажа. '/^([a-zA-Z0-9! @ # $%^& *() \ - + = |} {'";:? /., \ s] *)/i' является вашим регулярным выражением. – Tomalak
Так или иначе, я теряю знак доллара в конце, и я думаю, что 'search()' должен быть 'match()' вместо этого. –