Автор Тема: preg_replace и \\n  (Прочитано 3823 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн DeeSee

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 4
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
preg_replace и \\n
« : 10 Июля 2005, 23:00:00 »
Не могу понять откуда берётся перевод строки в конце $a...

// $f - многострочный txt-файл  
foreach($f as $a)  
{
     
$a preg_replace"/URL=http\\:\\/\\/www.tram-pam-pam.ru\\/file\\/(.*?)\\n/""\\\\1"$a);
     echo \
'$a\';  


В чём ошибка?

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
preg_replace и \\n
« Ответ #1 : 11 Июля 2005, 04:42:56 »
при чём здесь preg_replace?
$f - не может быть файлом. В пхп нет такого типа - файл.
если ты перебираешь $f через foreach - значит, это массив, а никакой не файл.

если ты не можешь понять, откуда берётся перевод строки - прочти свои же слова:
Цитировать
многострочный txt-файл

Оффлайн DeeSee

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 4
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
preg_replace и \\n
« Ответ #2 : 11 Июля 2005, 11:02:57 »
Цитировать
если ты перебираешь $f через foreach - значит, это массив, а никакой не файл.

Ессесно, не так выразился...
$f=file($DOCUMENT_ROOT.$d);
$d - многострочный файл
$f - массив
Цитировать
если ты не можешь понять, откуда берётся перевод строки - прочти свои же слова

Ну так ведь в шаблоне я указал перевод строки:
preg_replace( "/URL=http://www.tram-pam-pam.ru/file/(.*?)\\n/", "\\\\1", $a)

Более того попробовал
preg_replace( "/URL=http://www.tram-pam-pam.ru/file/(.*?).exe\\n/", "\\\\1", $a)
уже не работает... Неужели \\n неверно вписал?
preg_replace( "/URL=http://www.tram-pam-pam.ru/file/(.*?).exe/", "\\\\1", $a)
Всеравно в $a добавляется перевод строки...

Не понятно... В (.*?) всё вроди правильно указано...
На http://ru3.php.net/manual/ru/reference.pcre.pattern.syntax.php
написано, что точка:
Цитировать
соответствует любому символу, кроме перевода строки (по умолчанию)

Откуда берётся перевод строки не ясно...
Как его можно убрать?
« Последнее редактирование: 11 Июля 2005, 11:51:02 от DeeSee »

Оффлайн sublimity

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 121
  • +0/-0
  • 0
    • Просмотр профиля
preg_replace и \\n
« Ответ #3 : 11 Июля 2005, 14:11:27 »
помойму тута есть ответ :)
http://php.rinet.ru/manual/ru/function.file.php

Оффлайн Syrinx

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 21
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
preg_replace и \\n
« Ответ #4 : 12 Июля 2005, 16:29:50 »
$a = preg_replace( "/URL=http:\\/\\/www.tram-pam-pam.ru\\/file\\/(.*?)\\n/", "\\\\1", $a);

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28