Модераторы: ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поиск текста, не удовлетворяющего шаблону 
:(
    Опции темы
Tyumener
Дата 28.9.2010, 07:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 10
Регистрация: 14.9.2006

Репутация: нет
Всего: нет



Добрый день!
Столкнулась с проблемой написания рег.выражения для следующей задачи:
есть некоторый словарь из слов "one", "two", "three". Нужно написать регулярное выражение, которое определит, встречаются ли какие-то другие слова либо символы в строке.
Может быть задача тривиальна, но я в регулярных выражениях новичок, поэтому прошу помощи форумчан...) 
PM MAIL   Вверх
Jimy
Дата 28.9.2010, 08:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 177
Регистрация: 4.7.2010

Репутация: нет
Всего: 3



Цитата(Tyumener @ 28.9.2010,  07:02)
другие слова либо символы в строке.

Так все таки слова или символы?

Удаляйте из строки слова из словаря, а с тем что осталось после удаления проводите манипуляции по поиску других слов/символов.
PM   Вверх
tishaishii
Дата 29.9.2010, 23:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Создатель
***


Профиль
Группа: Завсегдатай
Сообщений: 1262
Регистрация: 14.2.2006
Где: Москва

Репутация: нет
Всего: 8



Код
/^\s*(?:one|two|three)\s*$/iosx or die "Exists $_\n" while <>

PM MAIL ICQ Skype   Вверх
MasterOfRegex
Дата 25.10.2010, 11:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 25.10.2010

Репутация: нет
Всего: нет



Цитата(Tyumener @ 28.9.2010,  07:02)
есть некоторый словарь из слов "one", "two", "three". Нужно написать регулярное выражение, которое определит, встречаются ли какие-то другие слова либо символы в строке.

Я уже отвечал на это сообщение на cyberforum.ru:
Код

$_="one two three hundert";
print "Есть и другие слова" if /\b(?!(?:one|two|three)\b)\b\w+\b/;

Это на проверку других слов. А если надо проверять вообще лишние символы, то они, очевидно, должны быть непробельными? Тогда вместо \b\w+\b надо написать \S.

Сергей
Мои статьи по Perl регулярным выражениям
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Регулярные выражения | Следующая тема »


 




[ Время генерации скрипта: 0.1299 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.