туплю в регулярках :( - Форум успешных вебмастеров - GoFuckBiz.com
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB93.4409
BTC/USD66206.3849
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 15.12.2008, 18:54   #1
cjtraff
Ебланнед
 
Регистрация: 20.08.2007
Сообщений: 375
Бабло: $29620
По умолчанию туплю в регулярках :(

что-то мозг отказывает, помогите плиз
есть текстовый файл, в нем урл
нужно вывести определенные строки
для поиска и вывода использую egrep
пример

egrep '^http://.*(/some.cgi$|/some2.cgi$)' file.txt

выводит строки начинающиеся с http:// и заканчивающиеся some.cgi или some2.cgi
все заебца

как сделать чтоб при таком раскладе были стопслова
то есть вместо .* поставить отрицание некоторых слов. так чтобы допустим
строка http://www.zloydomen.com/some.cgi не подпадала под условие по стопслову zloydomen?
cjtraff вне форума  
Старый 15.12.2008, 20:46   #2
cjtraff
Ебланнед
 
Регистрация: 20.08.2007
Сообщений: 375
Бабло: $29620
ТС -->
автор темы ТС По умолчанию

никто?
cjtraff вне форума  
Старый 15.12.2008, 21:18   #3
diehard
Ебланнед
 
Регистрация: 28.07.2008
Сообщений: 413
Бабло: $500
По умолчанию

не силен в грепе, там вроде через | можно отбросить неподходящие результаты задействуя вторую регулярку. или сделай скрипт на перле или пхп, который то же самое делает
diehard вне форума  
Старый 15.12.2008, 21:54   #4
rasiell
Senior Member
 
Регистрация: 15.12.2008
Сообщений: 106
Бабло: $13464
По умолчанию

Цитата:
'%http://www.[^zloy].*?(some\.cgi|some2\.cgi)%s'
— это вариант на php он должен выдернуть все кроме начинающихся на zloy, но это вариант с www.zloy
rasiell вне форума  
Старый 15.12.2008, 22:10   #5
solar
Senior Member
 
Регистрация: 04.04.2007
Сообщений: 601
Бабло: $7700
По умолчанию

egrep "pattern" file.txt | egrep -v "antipattern"
solar вне форума  
Старый 15.12.2008, 22:11   #6
solar
Senior Member
 
Регистрация: 04.04.2007
Сообщений: 601
Бабло: $7700
По умолчанию

это повод задуматься что не надо все усложнять, лучше строить код из небольших и простых кусков.
solar вне форума  
Старый 15.12.2008, 22:20   #7
pina
хде мой компот?!
 
Регистрация: 07.01.2008
Сообщений: 327
Бабло: $31276
Отправить сообщение для pina с помощью ICQ
По умолчанию

Цитата:
Сообщение от rasiell Посмотреть сообщение
— это вариант на php он должен выдернуть все кроме начинающихся на zloy, но это вариант с www.zloy
если мне не изменяет память то [^zloy] будет обозначать ПОСЛЕДОВАТЕЛЬНОСТЬ символов : z,l,o,y
а не точное совпадение с фразой
pina вне форума  
Старый 15.12.2008, 22:23   #8
solar
Senior Member
 
Регистрация: 04.04.2007
Сообщений: 601
Бабло: $7700
По умолчанию

Цитата:
Сообщение от pina Посмотреть сообщение
если мне не изменяет память то [^zloy] будет обозначать ПОСЛЕДОВАТЕЛЬНОСТЬ символов : z,l,o,y
а не точное совпадение с фразой
[^abc]
совпадает с одним любым символом кроме a,b или с.
solar вне форума  
Старый 15.12.2008, 22:51   #9
pina
хде мой компот?!
 
Регистрация: 07.01.2008
Сообщений: 327
Бабло: $31276
Отправить сообщение для pina с помощью ICQ
По умолчанию

Цитата:
Сообщение от solar Посмотреть сообщение
[^abc]
совпадает с одним любым символом кроме a,b или с.
ну да)
pina вне форума  
Старый 16.12.2008, 00:17   #10
wal
Member
 
Регистрация: 18.08.2008
Сообщений: 76
Бабло: $490
По умолчанию

[^(abc)] - скобочки никто не отменял...
wal вне форума