Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите обработать html регулярным выражением. Необходим обработчик обработки html. 
:(
    Опции темы
XMLDriver
Дата 12.8.2010, 06:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 28.1.2006

Репутация: нет
Всего: нет



Здравствуйте.
Возникла проблема. Есть html код, причем вообще разные. Т.е. берем страницу с любого сайта. 
Мне нужно обработать все слова какой-то функцией, которые встречаются на сайте и в которых алфавитные символы. Но, не задеть при этом ничего другого. 
Я так понимаю, что с помощью регулярного выражения, мы находим текст между тегами, т.е. от символа > до символа < , делим его по пробелам, и обрабатываем каждое слово. Обработка то, ерунда, а вот как выдернуть текст, обработать и вставить назад?
Например: 
Код

<? 
// Функция обработки текста

function replace_text($str)
{ $str = '1'.$str.'1';}

// Обработка html
while(выражение определяющее наличие необработанного текста)
{
// поиск текста между тегами
// обработка его
// вставка назад
}
?>


в общем я не знаю, как это реализовать. Помогите пожалуйста, очень прошу.
PM MAIL   Вверх
Wolf1994
Дата 12.8.2010, 07:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 5.10.2004

Репутация: 1
Всего: 29



Вопрос можно решить с помощью регулярного выражения для алфавитных символов и функции: preg_replace_callback.
PM MAIL WWW   Вверх
Wolf1994
Дата 12.8.2010, 07:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 5.10.2004

Репутация: 1
Всего: 29



Захватить символы снаружи тэгов можно с помощью: Assertations.
PM MAIL WWW   Вверх
XMLDriver
Дата 12.8.2010, 12:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 28.1.2006

Репутация: нет
Всего: нет



Цитата(Wolf1994 @ 12.8.2010,  07:49)
Захватить символы снаружи тэгов можно с помощью: Assertations.

Читаю , но пока мало понимаю, как эта штука работает, не приведете пример?
PM MAIL   Вверх
XMLDriver
Дата 12.8.2010, 12:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 28.1.2006

Репутация: нет
Всего: нет



Сходил по ссылке, почитал, насколько вообще смог понять...правда мало, что понял. Можно в двух словах и небольшой пример? Хотя бы, что за концепция у этой штуки? Куда рыть?
PM MAIL   Вверх
XMLDriver
Дата 12.8.2010, 13:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 28.1.2006

Репутация: нет
Всего: нет



Почитал, но мало, что понял Assertations. 
Какая концепция работы этой штуки? В какую сторону рыть и где можно поискать примеры? Помогите, плс.
PM MAIL   Вверх
XMLDriver
Дата 12.8.2010, 13:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 20
Регистрация: 28.1.2006

Репутация: нет
Всего: нет



Одной ссылки на технологию на английском языке и совет по использованию функции недостаточно. Я и так знал, что функцию использовать, вопрос в регулярке и конструкции.
PM MAIL   Вверх
Wolf1994
Дата 12.8.2010, 13:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1701
Регистрация: 5.10.2004

Репутация: 1
Всего: 29



Цитата(XMLDriver @  12.8.2010,  12:03 Найти цитируемый пост)
Читаю , но пока мало понимаю, как эта штука работает, не приведете пример? 

Утверждения устанавливают условия, при которых работает, заключённое в них, регулярное выражение.

В данном случае, с помощью утверждений, можно добавить в условие захвата [a-zа-я ]+ наличие символов >< в начале и конце текста:
Код

/(?<=[\>]{1})[a-zа-я ]+(?=[\<]{1})/si

PM MAIL WWW   Вверх
krundetz
Дата 12.8.2010, 15:32 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вечный странник
***


Профиль
Группа: Завсегдатай
Сообщений: 1400
Регистрация: 14.6.2007
Где: НН(Сормово)

Репутация: 1
Всего: 69



XMLDriver, может стоит взглянуть в сторону библиотек работы с DOM-структурой?


--------------------
!цензоры - Хранитель стратегической жидкости
Группа ТГВ
Группа Нижний Новгород
user posted image
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Тексты | Следующая тема »


 




[ Время генерации скрипта: 0.0888 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.