Форум программистов, компьютерный форум, киберфорум
JavaScript: RegExp
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/75: Рейтинг темы: голосов - 75, средняя оценка - 4.80
1 / 1 / 1
Регистрация: 31.03.2012
Сообщений: 49

Регулярное выражение, которое разрешит только ввод слов на любом языке

09.02.2013, 18:18. Показов 15795. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте форумчане, нужна помощь с регулярными выражениями, пытался написал регулярное выражение, которое запретит ввод формы любого числа и всех спецсимволов, но разрешит ввод слов на любом языке.

Пытался сделать сначала через разрешенные символы, но понял, что так не пойдет, т.к. будет поддерживаться не только русский и английский, и стал пробывать запретить все остальные, запретить цифры было не проблема, трудности возникли с запретом ввода спецсимволов пытался делать с помощью [^abc], только перечислял все спецсимволы, но не получилось, пробовал ставить перед каждым спецсимволов \ , но тоже не сработало.

PS. что бы тему не переместили, из топика, делаю через pattern html5
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.02.2013, 18:18
Ответы с готовыми решениями:

Как составить регулярное выражение, которое бы искало символ ^
Есть выражение, которое ищет все символы, кроме тех, что указаны с символом отрицания. ^+$ Соответственно символ ^, должен...

Составить регулярное выражение, которое бы проверяло логин пользователя
Здравствуйте. Помогите написать регулярное выражение, которое бы проверяло логин пользователя. Разрешено только a-z, A-Z,0-9. Выражение...

Написать регулярное выражение, которое соответствует формату dd.mm.yyyy
Помогите написать регулярное выражение, которое соответствует формату dd.mm.yyyy Тоесть у меня есть строка str1. надо чтобы если он...

11
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,529
09.02.2013, 21:50
Цитата Сообщение от ivsamiylov Посмотреть сообщение
но разрешит ввод слов на любом языке.
вроде так
JavaScript
1
if(/[^A-zА-яЁё]/.test(str)){alert('можно только русские и англицкие буквы');};
0
2838 / 1647 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
09.02.2013, 22:32
Цитата Сообщение от newJS Посмотреть сообщение
JavaScript
1
if(/[^A-zА-яЁё]/.test(str)){alert('можно только русские и англицкие буквы');};
Между "A" и "z" есть всякие символы.
Что касается "любого языка", думаю, придётся все диапазоны символов прописывать. Их вроде не такое большое количество, обычно такие символы последовательно идут.
0
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,529
10.02.2013, 07:35
Цитата Сообщение от Somebody Посмотреть сообщение
Между "A" и "z" есть всякие символы.
Какие такие всякие?
И почему "всяких" нет в А-я?


Цитата Сообщение от ivsamiylov Посмотреть сообщение
но разрешит ввод слов на любом языке.
Если имеется ввиду не только русский и английский, тогда проще проверять все не буквы.
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
10.02.2013, 08:33
Цитата Сообщение от newJS Посмотреть сообщение
Какие такие всякие?
Логин с русскими буквами
JavaScript
1
2
>>> /^[A-z]+$/.test('[\\]^_`')
true
Цитата Сообщение от newJS Посмотреть сообщение
И почему "всяких" нет в А-я?
Потому что диапазоны А-Я а-я следуют вплотную друг к другу.
JavaScript
1
2
3
4
5
6
7
8
9
10
11
>>> null, {'Z': 'Z'.charCodeAt(0), 'a': 'a'.charCodeAt(0) }
Object {
    Z: 90
    a: 97
}
 
>>> null, {'Я': 'Я'.charCodeAt(0), 'а': 'а'.charCodeAt(0) }
Object {
    Я: 1071
    а: 1072
}
0
1 / 1 / 1
Регистрация: 31.03.2012
Сообщений: 49
10.02.2013, 09:07  [ТС]
Спасибо, но вы предлагаете разрешить ввод русских и английских символов, но это не пойдет, поэтому над как то запретить ввод спец символов и цифр, с цифрами довольно просто \D ,но вот со спецсимволами не понятно, как и запрещать [^!@#$%^&*()] или над указывать код каждого символа, или что бы он различал спец символы над перед каждым символом поставить [^\!\@\#\$\%\^\&\*\(\)] кто может подсказать
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
10.02.2013, 09:17
Цитата Сообщение от ivsamiylov Посмотреть сообщение
Спасибо, но вы предлагаете разрешить ввод русских и английских символов, но это не пойдет, поэтому надо как то запретить ввод
Всё, что не разрешено, становится запрещено. Третьего не дано.
0
1 / 1 / 1
Регистрация: 31.03.2012
Сообщений: 49
10.02.2013, 09:26  [ТС]
но мне нужно разрешить ввод не только русских и английских букв, но и других алфовитов
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
10.02.2013, 09:51
Тогда проще запретить лишнее: пунктуация, пробельные символы и цифры.
JavaScript
1
2
if (/[-\s0-9`~!@#$%^&*()_=+\\|\[\]{};:'",.<>\/?]/.test(login))
    alert('Недопустимые символы обнаружены');
Но все равно этого будет мало. В юникоде есть масса символов, которые не являются "буквами". Все их перечислять здесь даже диапазонами - бред.
1
1 / 1 / 1
Регистрация: 31.03.2012
Сообщений: 49
11.02.2013, 18:34  [ТС]
использовал данное регулярное выражение, сночало протестил на сайте http://regexpr.ru, вводя в регулярные выражения /[^-\s0-9`~!@#№$%^&*()_=+\\|\[\]{};:'",.<>\/?]+/ а в текст
Кликните здесь для просмотра всего текста
2007-11-25
243-12-3
1999-05-14
ывпывп
fafs
ddhdh
f
g
h
i
%
:

!@#$%^&*()_+=-/|\-*.,`
и там все работает, но уже в
HTML5
1
<input type="text" required value="" pattern="/[^-\s0-9`~!@#№$%^&*()_=+\\|\[\]{};:',.<>\/?]+/"/>
почему то не работает, выдает не верный ввод при любом символе
0
2838 / 1647 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
11.02.2013, 21:45
В юникоде слишком много всего, чтобы запрещать так по одному символу... Мне, например, нравится иногда для прикола писать символ "RTL override" в нике на каком-нибудь сайте, особенно если ник выводится не в отдельном div'е, а вместе с чем-то ещё ;-) Так что, мне кажется, тут единственный вариант - это проверять по диапазонам разрешённых символов.
0
1 / 1 / 1
Регистрация: 31.03.2012
Сообщений: 49
11.02.2013, 22:21  [ТС]
нашел причину, исправил на
HTML5
1
<input type="text" required value="" pattern="[^-\s0-9`~!@#№$%^&*()_=+\\|\[\]{};:',.<>\/?]+/">
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.02.2013, 22:21
Помогаю со студенческими работами здесь

Составить регулярное выражение, которое будет анализировать переменные
Здравствуйте! Условие задачи: На вход программы подается текстовый файл (с именем INPUT.TXT), содержащий только описания...

Составить регулярное выражение, которое считывало бы все символы в строке с 13 по 72
Приветствую! Не могу ничего толкового придумать.Нужно составить выражение, которое считывало бы все символы в строке с 13го по 72....

Подскажите регулярное выражение, которое отыщет все подобные строчки
Для примера эти 3 строки, что бы видно какие части могут изменяться: /*tpa=http://www.site.com/fonts/13637-webfont.eot?#iefix*/ ...

Составное регулярное выражение, которое ищет слова длиной от 4 до 70 символов
Всем привет. Вобщем такая проблема: нужно написать регулярное выражение, которое ищет слова длиной от 4 до 70 символов и в которых есть...

Регулярное выражение, которое пропускает все символы, кроме пробелов
Я состряпал такое вот выражение preg_match(&quot;#^+$#&quot;,$password) но оно по какой-то причине не пропускает русские буквы в $password. А если...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru