Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

Регулярки-регулярочки

voed
сообщение 22.12.2014, 20:22
Сообщение #1
Стаж: 11 лет

Сообщений: 2593
Благодарностей: 1760
Полезность: 405

Есть такое выражение
Цитата
^[\w\dа-я\-\{\}\[\]\(\)\*\.\\\?\$\|\/\,\:\;\~\`\@\#\%\!\&\=\^\$\ ]$/i

На regex101.com отлично выполняет свои функции
Как его использовать в amxx?
Если так
Цитата
^^[\w\dа-я\-\{\}\[\]\(\)\*\.\\\?\$\|\/\,\:\;\~\`\@\#\%\!\&\=\^^\$\ ]$/i

то компилится, но всегда REGEX_NO_MATCH
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   Цитировать сообщение
voed
сообщение 22.12.2014, 21:09
Сообщение #2
Стаж: 11 лет

Сообщений: 2593
Благодарностей: 1760
Полезность: 405

Разобрался. Сочетание символов +$ обрывало строку при чтении из файла, а сама регулярка была кривой:D

Отредактировал: voed, - 22.12.2014, 21:28
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
voed
сообщение 22.12.2014, 21:48
Сообщение #3
Стаж: 11 лет

Сообщений: 2593
Благодарностей: 1760
Полезность: 405

А еще regex не умеет в UTF-8. Если юзать сокращение "а-я", то выражение работает только для букв "а" и "я". А если даже добавить вручную "\й\ц\у\к\е\н\г\ш\щ\з\х\ъ\ф\ы\в\а\п\р\о\л\д\ж\э\я\ч\с\м\и\т\ь\б\ю\", то флаг "i" не сработает, т.е. надо добавлять еще и большие буквы. А если добавить и большие, то это все уже не помещается в строку. Видимо, придется это все парсить вручную
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: