Forum Webscript.Ru

Программирование => Регулярные выражения => Тема начата: norden от 16 Сентября 2003, 00:33:33

Название: задолбался уже... :)
Отправлено: norden от 16 Сентября 2003, 00:33:33
Есть файл в котором много раз есть отрезок:


word1/word2  


причем word1, word2 - различные слова на этих местах.

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

\\nword1/word2  \\n

И мне надо этот кусок удалить отовсюду в файле. Не могу составить шаблон. Заранее спасибо!
Название: задолбался уже... :)
Отправлено: norden от 16 Сентября 2003, 00:34:59
а стоп. важное примечание - после слова word2 идет не просто пробел, а \'  \', т.е. пробел + html-код для пробела:


word1/word2   
Название: задолбался уже... :)
Отправлено: norden от 16 Сентября 2003, 00:41:34
черт, форум проглотил html-код для пробела. вот он:

& n b s p ;

тока все вместе разумеется
Название: задолбался уже... :)
Отправлено: metton от 16 Сентября 2003, 01:04:13
s/\\n[\\w]+\\/[\\w]+ & nbsp;\\n\\n//
Название: задолбался уже... :)
Отправлено: metton от 16 Сентября 2003, 01:14:02
Только после & нет пробела.
Шаблон грубоват. Что-то возможно улучшить.
Но ПРИМЕРНО так...
Название: задолбался уже... :)
Отправлено: Yukko от 16 Сентября 2003, 19:23:16
norden
А обязательно матчить все переводы строки???
Есть ли разница между

word1/word2

и

word1/word2

что-то мне кажется что нет....
поэтому без наворотов:

some_string = "
word1/word2

word3/word4";
$some_string = preg_replace("/.*?<\\/td>/si","", $some_string);

Замена будет и в первом и во втором случае...