Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите построить регулярное выражение, Помогите пожалуйста 
:(
    Опции темы
t77
Дата 14.6.2009, 22:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Помогите пожалуйста составить регулярное выражение.
Имеется огромный HTML текст. Необходимо удалить атрибут align="значение" во всех таблицах.
PM MAIL   Вверх
Rimch
Дата 15.6.2009, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



это маска поиска
Код
/align=\"[^\"]+\"/ig

а дальше пробегаемся по таблицам с этой маской и удаляем всё ненужное.
PM MAIL ICQ   Вверх
t77
Дата 15.6.2009, 13:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Rimch, маска просто супер, удаляет то, что нужно.
Цитата

а дальше пробегаемся по таблицам с этой маской и удаляем всё ненужное.

Как...???
Как можно пройтись по тексту и получать каждый раз всю скобку 
Код
<table атрибуты>
, для того, чтобы удалять атрибут-align, только, исключительно в таблицах ?

Добавлено через 12 минут и 55 секунд
И еще уважаемые гуру, скажите пожалуйста, можно ли получить общее количество замен?
Тоесть, если было удалено 50 атрибутов, то получить число 50. smile 
PM MAIL   Вверх
Rimch
Дата 15.6.2009, 14:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Посмотрите  тут и тут, может быть это поможет.

можно воспользоваться такой регуляркой
Код
/\<table([^\>]+)align=\"[^\"]+\"([^\>]+)\>/ig


Я бы дал вам готовую функцию на JavaScript, но 
процесс написания своего велосипеда повышает профессиональный уровень программиста



Это сообщение отредактировал(а) Rimch - 15.6.2009, 14:32
PM MAIL ICQ   Вверх
t77
Дата 15.6.2009, 17:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Понятно, буду разбираться...
Скажите мне пожалуйста как получить общее количество замен ???
Тоесть, если было удалено 50 атрибутов, то получить число 50.
Или если было найдено и заменено 10 раз слово, то получить это самое 10.
Как это делается? Или точнее как получить число изменений ?
PM MAIL   Вверх
BrainWorker
Дата 20.6.2009, 18:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 553
Регистрация: 9.8.2007
Где: Дубна, Россия

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



Цитата(t77 @ 15.6.2009,  17:13)
Скажите мне пожалуйста как получить общее количество замен ???
Тоесть, если было удалено 50 атрибутов, то получить число 50.
Или если было найдено и заменено 10 раз слово, то получить это самое 10.
Как это делается? Или точнее как получить число изменений ?

Можете перед заменами выполнить функцию preg_match_all с данным же регулярным выражением. Функция preg_match_all возвращает количество найденных соответствий.

Это сообщение отредактировал(а) BrainWorker - 20.6.2009, 18:45
PM MAIL Jabber   Вверх
12345c
Дата 24.6.2009, 01:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

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



Цитата(t77 @  15.6.2009,  13:21 Найти цитируемый пост)
можно ли получить общее количество замен

строка.match(regexpression)

Возвращает массив строк в пределах текущей строки, которые соответствуют используемому как параметр регулярному выражению.

Но для быстроты лучше просто считайте количество замен, делая их по одной. Текст ведь большой, а реги и скрипт вообще медленный, незачем их заставлять пробегать дважды.


--------------------
Google Code Playground - онлайн-отладка своих примеров HTML+JS без регистрации, с сохранением по URL, без кириллицы. Go
PM WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




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


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

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