Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: поиск подстроки

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Itan
Отправлено: 11 Октября, 2008 - 15:29:34
Post Id


Частый гость


Покинул форум
Сообщений всего: 199
Дата рег-ции: Окт. 2008  


Помог: 0 раз(а)




Добрый день! Есть способ реализовать такое:

$x = "<head>Любое количество тегов...</head><body><div>Текст, текст, текст</div></body>";

Нужно вывести всё, что между <body></body>?

Я думаю, что можно с помощью substr() (скорее всего я не прав), но как это оформить?
 
 Top
Singularis
Отправлено: 11 Октября, 2008 - 16:08:09
Post Id


Новичок


Покинул форум
Сообщений всего: 37
Дата рег-ции: Май 2008  


Помог: 0 раз(а)




preg_match("/<body>(.*)<\/body>/is",$x,$somevar)

вывести $somevar[1]
 
 Top
Itan
Отправлено: 11 Октября, 2008 - 16:32:53
Post Id


Частый гость


Покинул форум
Сообщений всего: 199
Дата рег-ции: Окт. 2008  


Помог: 0 раз(а)




Спасибо! Подмигивание

(Отредактировано автором: 11 Октября, 2008 - 16:46:35)

 
 Top
IOpeH
Отправлено: 11 Октября, 2008 - 16:51:29
Post Id



Частый гость


Покинул форум
Сообщений всего: 175
Дата рег-ции: Нояб. 2007  


Помог: 0 раз(а)




PHP:
скопировать код в буфер обмена
  1. $result=preg_replace('/.*<body>(.*)<\/body>.*/isU','\\1',$ваш_текст);


работает идеально, сам потестил, вспомнил немного регулярные выражения Хорошо
(Добавление)
пока писал уже успели без меня ... Хм

мой вариант кстати лучше
 
 Top
Itan
Отправлено: 11 Октября, 2008 - 17:01:37
Post Id


Частый гость


Покинул форум
Сообщений всего: 199
Дата рег-ции: Окт. 2008  


Помог: 0 раз(а)




Спасибо! Оба кода хороши, но как, всё таки, вывести всё, что между <body></body> вместе с тегами одной строкой, а не массивом?

(Отредактировано автором: 12 Октября, 2008 - 13:59:50)

 
 Top
Singularis
Отправлено: 12 Октября, 2008 - 17:12:45
Post Id


Новичок


Покинул форум
Сообщений всего: 37
Дата рег-ции: Май 2008  


Помог: 0 раз(а)




preg_match("/<body>(.*)<\/body>/is",$x,$somevar)

вывести $somevar[1]
 
 Top
IOpeH
Отправлено: 12 Октября, 2008 - 19:02:37
Post Id



Частый гость


Покинул форум
Сообщений всего: 175
Дата рег-ции: Нояб. 2007  


Помог: 0 раз(а)




у меня и так не массивом, результат в переменной $result
 
 Top
Itan
Отправлено: 13 Октября, 2008 - 15:21:21
Post Id


Частый гость


Покинул форум
Сообщений всего: 199
Дата рег-ции: Окт. 2008  


Помог: 0 раз(а)




Ура! Спасибо Singularis!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB