Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: первая строка до переноса строки
 
 автор: vadimka   (12.06.2009 в 10:42)   письмо автору
 
 

Здравствуйте!
пытаюсь выделить первую строку до переноса строки

$str1=preg_replace('|(^[А-Яа-я]+[\s]+)[\r\n](.+?)|is', '<span style="color: red;">\\0</span>',$str);

подскажите, что я делаю не так?

  Ответить  
 
 автор: ddhvvn   (12.06.2009 в 10:56)   письмо автору
 
   для: vadimka   (12.06.2009 в 10:42)
 

изъясняетесь и используете модификатор s

  Ответить  
 
 автор: vadimka   (12.06.2009 в 11:35)   письмо автору
 
   для: ddhvvn   (12.06.2009 в 10:56)
 

Сорри, за сумбур.
Текст:

Первая строчка
остальной текст
другие строчки
и т.д.



$str=nl2br($row["about"]);
$str1=preg_replace('|(^[А-Яа-я]+[\s]+)[\r\n](.+?)|s', '<span style="color: red;">\\0</span>',$str);

вот, выделить

Первая строчка

  Ответить  
 
 автор: ddhvvn   (12.06.2009 в 13:25)   письмо автору
 
   для: vadimka   (12.06.2009 в 11:35)
 

Вы выделенную курсивом часть моего ответа внимательно прочитали?
Прочтите свой вопрос в первом посте, а потом мой ответ.

  Ответить  
 
 автор: vadimka   (12.06.2009 в 15:52)   письмо автору
 
   для: ddhvvn   (12.06.2009 в 13:25)
 

Вы извините, но я не понял. Или Вы имеете в виду заменить
\r\n
на
\s
?
текст обрабатывается:
nl2br
, и мне нужно выделить текст до первого
\r\n

  Ответить  
 
 автор: ddhvvn   (12.06.2009 в 16:14)   письмо автору
 
   для: vadimka   (12.06.2009 в 10:42)
 

Короче стоп!
Что значить "выделить"?
Если нужно вытащить просто из какого текста первую строку регуляркой, то проще всего сделать так

<?php
    $text 
'Это
    многострочный
    текст'
;

    
preg_match('|.*|'$text$buf);

    
print_r($buf);
?>

  Ответить  
 
 автор: Qiao   (12.06.2009 в 16:26)   письмо автору
 
   для: ddhvvn   (12.06.2009 в 16:14)
 

Что-то вроде ^(.*?\n)(.*) заменить на <b>$1</b>$2

  Ответить  
 
 автор: ddhvvn   (12.06.2009 в 17:09)   письмо автору
 
   для: ddhvvn   (12.06.2009 в 16:14)
 

блин, опять туплю... ппц

<?php 
    $text 
'Это
    многострочный
    текст'
;

    
$text preg_replace('|^(.*?)\r?\n|''<span style="color: red">$1</span>'$text);

    echo 
$text;
?>

  Ответить  
 
 автор: vadimka   (12.06.2009 в 17:23)   письмо автору
 
   для: ddhvvn   (12.06.2009 в 17:09)
 

спасибо! - оба варианта работают

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования