1. Удалить все html-теги, оставить только текст:
2. В списке ссылок вида <a href=»LINK»>TITLE</a> удалить все html-теги, оставить только ссылки:
заменить на:
3. В том же самом списке оставить только тайтлы:
4. Удалить строки с заданным количеством вхождения определенного символа. (Мне это понадобилось, когда нужно было очистить большой список ссылок на товары — 45 тыс. позиций — от ссылок на категории. Друг от друга они отличались общим количеством слешей — в категориях было 5, а в товарах — 6)
разъяснение:
^ начало строки
( начало группы
[^/]* любой символ кроме слеша, 0 или более раз
/ слеш
){5} закончить и повторить группу 5 раз
[^/]* любой символ кроме слеша, 0 или более раз
$ конец строки
5. Удалить весь текст между двумя определенными символами (в данном примере — между двух кавычек):
6. Удалить все html-теги с определенным атрибутом. Например, мы хотим удалить все теги (и содержимое тегов), у которых совпадает класс, или инлайн-стили
<td class="nowrap">([^<]*)</td> - то есть задаем искомую строку, внутри которой может быть произвольный текст. Текст оформляем как ([^<]*) - любые символы,
кроме символа открытия (или закрытия) тега.
7. Удалить все теги, внутри которых содержатся только числа:
8. Удалить заданное количество символов от начала строки (данный пример удаляет первые 9 символов):
В данном примере выражение \d+ означает любую цифры от 0 до 9 любое количество раз
Аналогично можно использовать следующие наборы выражений:
. — Один произвольный символ
^ — Начало строки
$ — Конец строки
\s — Пробел
\S — Не Пробел
\w — Буква, цифра или символ подчёркивания _
\d — Любая цифра
\D — Любой символ кроме цифр
[0-9] — Любая цифра
[a-z] — Любая буква от a до z (весь латинский набор символов) в нижнем регистре
[A-Z] — Любая буква от a до z в ВЕРХНЕМ регистре
[a-zA-Z] — Любая буква от a до z в произвольном регистре
[a-Z] — Любая буква от a до z в произвольном регистре
* — Повторение. Означает, что предшествующий символ может повторяться (0 или более раз)
.* — Любой набор символов. Например, условие <p> .*</p> — найдет все что между тегами <p> </p>
(^.*$) — Любой текст между началом и концом строки
([0-9][0-9]*.) — Любое двухзначное число
\n\r — Пустая строка
^\s*$ — Пустая строка с пробелом
^[ ]*$ — Ищет пустые строки содержащие пробел.
Код:
[<].*?>
2. В списке ссылок вида <a href=»LINK»>TITLE</a> удалить все html-теги, оставить только ссылки:
Код:
^[^"]+.([^"]+).*
Код:
$1
3. В том же самом списке оставить только тайтлы:
Код:
</?[^>]*.
4. Удалить строки с заданным количеством вхождения определенного символа. (Мне это понадобилось, когда нужно было очистить большой список ссылок на товары — 45 тыс. позиций — от ссылок на категории. Друг от друга они отличались общим количеством слешей — в категориях было 5, а в товарах — 6)
Код:
^([^/]*/){5}[^/]*$
разъяснение:
^ начало строки
( начало группы
[^/]* любой символ кроме слеша, 0 или более раз
/ слеш
){5} закончить и повторить группу 5 раз
[^/]* любой символ кроме слеша, 0 или более раз
$ конец строки
5. Удалить весь текст между двумя определенными символами (в данном примере — между двух кавычек):
Код:
"([^"]*)"
6. Удалить все html-теги с определенным атрибутом. Например, мы хотим удалить все теги (и содержимое тегов), у которых совпадает класс, или инлайн-стили
<td class="nowrap">([^<]*)</td> - то есть задаем искомую строку, внутри которой может быть произвольный текст. Текст оформляем как ([^<]*) - любые символы,
кроме символа открытия (или закрытия) тега.
7. Удалить все теги, внутри которых содержатся только числа:
Код:
<td>(\d+)</td>
8. Удалить заданное количество символов от начала строки (данный пример удаляет первые 9 символов):
Код:
^.{0,9}
В данном примере выражение \d+ означает любую цифры от 0 до 9 любое количество раз
Аналогично можно использовать следующие наборы выражений:
. — Один произвольный символ
^ — Начало строки
$ — Конец строки
\s — Пробел
\S — Не Пробел
\w — Буква, цифра или символ подчёркивания _
\d — Любая цифра
\D — Любой символ кроме цифр
[0-9] — Любая цифра
[a-z] — Любая буква от a до z (весь латинский набор символов) в нижнем регистре
[A-Z] — Любая буква от a до z в ВЕРХНЕМ регистре
[a-zA-Z] — Любая буква от a до z в произвольном регистре
[a-Z] — Любая буква от a до z в произвольном регистре
* — Повторение. Означает, что предшествующий символ может повторяться (0 или более раз)
.* — Любой набор символов. Например, условие <p> .*</p> — найдет все что между тегами <p> </p>
(^.*$) — Любой текст между началом и концом строки
([0-9][0-9]*.) — Любое двухзначное число
\n\r — Пустая строка
^\s*$ — Пустая строка с пробелом
^[ ]*$ — Ищет пустые строки содержащие пробел.