00m.Ru
21Ноя/122

Regex в Yahoo Pipes примеры

Чтобы конвертировать обычный тизерный rss в полнотекстовый, я выбрал бесплатный сервис yahoo pipes. В нем есть возможность чистить содержание item.description с помощью regex-правил. Перечислю некоторые из них, которые реально работали (может быть, они и не совершенны, но зато работают).

1. вытащить из тега ссылки только содержание атрибута href, нужно для item.link

(.*)href=\"(.*?)\"(.*) заменить на  $2

2. вытащить содержимое внутри тега A

(.*)\>(.*?)</a> заменить на  $2, нужно для item.title

3. Удалить содержимое (текстовое, для тегов не действует) внутри конкретного тега вместе с тегом

<p.*?>(.*?)</p>

4. Удалить конкретный тег

<p.*?>

5. Удалить содержимое внутри тега конкретного класса вместе с тегом

<p[^>]*>(.*?)</p>

6. Удалить тег img

<img.*?/>

7. Удалить атрибут из тега

<p> заменить на <p>

8. Заменить непечатный символ печатным
[\x92] на  &rsquo; (апостроф)

9. Замена тегов одного типа на теги другого типа

<h2>(.*?)</h2> на <p>$1</p>

10. Очистить тег от атрибутов

<div [^>]*> на <div>

11. Убрать перевод строки

[\n]

12. Убрать пробел

[\s]

13. Убить все атрибуты в рисунке, кроме ссылки и назначить класс

<img.*? src="(.*?)".*?> на <img src="$1">

14. Удалить вопросительный знак из ссылки

[\\?]

15. превратить 19.10.11 2011.10.19

(\d+)\.(\d+)\.(\d+) в 20$3.$2.$1

16.удалить все в круглых скобках вместе со скобками

\(([^)]*)\)