Регулярные выражения на все случаи жизни

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43
  • Спасибо
Реакции: Nosovevgen

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 983
Благодарностей
4 433
Баллы
113
Мне нужно удалить из HTML div с цитированием.
PHP:
Regex.Replace(he.GetAttribute("innerhtml"), @"(?<=<div\ class=""quote"">).*(?=</div>)", String.Empty);
Но он часто глючит потому что и после цитаты есть теги и div-ы.
Как лучше изменить регулярку чтобы удаляла только этот элемент целиком?
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
Мне нужно удалить из HTML div с цитированием.
PHP:
Regex.Replace(he.GetAttribute("innerhtml"), @"(?<=<div\ class=""quote"">).*(?=</div>)", String.Empty);
Но он часто глючит потому что и после цитаты есть теги и div-ы.
Как лучше изменить регулярку чтобы удаляла только этот элемент целиком?
никак)
 
  • Спасибо
Реакции: Astraport

LeonidV

Client
Регистрация
01.04.2016
Сообщения
23
Благодарностей
2
Баллы
3
Подскажите мне нужно спарсить данные какой город, какая широта и долгота
</tr>
<tr>
<td>Город:</td>
<td>Прилуки</td>
</tr>
<tr>
<td>Широта:</td>
<td>50.59324</td>
</tr>
<tr>
<td>Долгота:</td>
<td>32.38761</td>
</tr>
<tr>
 
Регистрация
12.07.2014
Сообщения
916
Благодарностей
373
Баллы
63
Подскажите мне нужно спарсить данные какой город, какая широта и долгота
</tr>
<tr>
<td>Город:</td>
<td>Прилуки</td>
</tr>
<tr>
<td>Широта:</td>
<td>50.59324</td>
</tr>
<tr>
<td>Долгота:</td>
<td>32.38761</td>
</tr>
<tr>
Самый простой вариант
Код:
(?<=<td>).*?(?=</td>)
Вариант поумнее. Учитываем двоеточие и не включаем строки с ним.
Код:
(?<=<td>).*[^:](?=</td>)
 
  • Спасибо
Реакции: LeonidV

mihacb

Новичок
Регистрация
05.10.2018
Сообщения
22
Благодарностей
0
Баллы
1
Всем привет, прошу подсказки:
Допустим, есть переменная с текстом: достопримечательность.

1. Нужно сократить ее в рандомном режиме до первых 3-5 букв, какой код?

2. Нужно убрать последнюю часть (20%) букв?
 
Регистрация
12.07.2014
Сообщения
916
Благодарностей
373
Баллы
63
Всем привет, прошу подсказки:
Допустим, есть переменная с текстом: достопримечательность.

1. Нужно сократить ее в рандомном режиме до первых 3-5 букв, какой код?

2. Нужно убрать последнюю часть (20%) букв?
1.
Первый кубик Обработка текста с макросом {-Random.Int-|-3-|-6-} в переменную rand
Второй кубик Обработка текста и Regex. Регулярка ^.{0,{-Variable.rand-}}

2.
Считаете количество символов в строке.
Считаете сколько символов приходится на 20%
Подставляете число в регулярку .{0,{-Variable.rand-}}$
Далее обработка текста как первом примере.



Иногда такой вот поиск в Гугл помогает
 

kerteis

Новичок
Регистрация
29.11.2015
Сообщения
7
Благодарностей
0
Баллы
1
Привет, подскажите пожалуйста как удалить все многоточие?
 

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43
  • Спасибо
Реакции: udder и kerteis

juder

Client
Регистрация
05.08.2018
Сообщения
62
Благодарностей
21
Баллы
8
Добрый день!
Код:
(?<=<a\ class="name"\ title="Слово"\ href=").*(?=">)
Подскажите как написать правильно....там где в кавычках "Слово" может быть любой текст (слово / предложение с цифрами / знаками препинания).
 

woober

Client
Регистрация
07.04.2015
Сообщения
211
Благодарностей
123
Баллы
43
Добрый день!
Код:
(?<=<a\ class="name"\ title="Слово"\ href=").*(?=">)
Подскажите как написать правильно....там где в кавычках "Слово" может быть любой текст (слово / предложение с цифрами / знаками препинания).
Слово заменить на .*?
 
  • Спасибо
Реакции: juder

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43
  • Спасибо
Реакции: juder

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 983
Благодарностей
4 433
Баллы
113
Подскажите регулярку для такой задачи.
Часто люди не делают пробел в конце предложения, выглядит это так: ...with chat.It will be a...
Нужно добавлять пробел между точкой и буквой, если она заглавная - ...with chat. It will be a...
Какой регуляркой это можно сделать? Спасибо.
 

SergSh

Client
Регистрация
10.05.2017
Сообщения
541
Благодарностей
395
Баллы
63
Подскажите регулярку для такой задачи.
Часто люди не делают пробел в конце предложения, выглядит это так: ...with chat.It will be a...
Нужно добавлять пробел между точкой и буквой, если она заглавная - ...with chat. It will be a...
Какой регуляркой это можно сделать? Спасибо.
Код:
string f = "qwer.Rtttt";

return Regex.Replace(f, @"(?<=\w\.).*?(?=[A-Z])", " ");
 
  • Спасибо
Реакции: Astraport

Astraport

Client
Регистрация
01.05.2015
Сообщения
4 983
Благодарностей
4 433
Баллы
113

SergSh

Client
Регистрация
10.05.2017
Сообщения
541
Благодарностей
395
Баллы
63

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113

inilim

Client
Регистрация
16.09.2017
Сообщения
446
Благодарностей
170
Баллы
43
Как добавить? в искомом тексте должно содержать слово "комментарий" или "comments".

#<span\ (slot="date"|class="(date|style-scope|ytd-video-secondary-info-renderer)\ (date|style-scope|ytd-video-secondary-info-renderer)\ (date|style-scope|ytd-video-secondary-info-renderer)")\ (slot="date"|class="(date|style-scope|ytd-video-secondary-info-renderer)\ (date|style-scope|ytd-video-secondary-info-renderer)\ (date|style-scope|ytd-video-secondary-info-renderer)")>[\w\W]*?</span>#
 

CmauJluk

Client
Регистрация
25.12.2017
Сообщения
287
Благодарностей
60
Баллы
28
Помогите выдрать ссылку, цифры всегда разные (перечисление страниц) у самого не получается
Код:
<div><a href="https://sait.ru/poisk/?category=1&amp;min_age=0&amp;max_age=0&amp;int_country_id=1&amp;int_region_id=0&amp;int_city_id=0&amp;int_metro_id=0&amp;children=-1&amp;str_order_by=order_date&amp;page=5">5</a></div>
 

ezotonal

Client
Регистрация
13.01.2014
Сообщения
819
Благодарностей
231
Баллы
43
Помогите выдрать ссылку, цифры всегда разные (перечисление страниц) у самого не получается
Код:
<div><a href="https://sait.ru/poisk/?category=1&amp;min_age=0&amp;max_age=0&amp;int_country_id=1&amp;int_region_id=0&amp;int_city_id=0&amp;int_metro_id=0&amp;children=-1&amp;str_order_by=order_date&amp;page=5">5</a></div>
(?<=<a\ href=")https://sait\.ru/poisk/\?category.*?(?=">)
 
  • Спасибо
Реакции: CmauJluk

Enigma

Client
Регистрация
16.06.2017
Сообщения
187
Благодарностей
31
Баллы
28
Подскажите, пожалуйста

Есть известная регулярка, которая парсит Email:

Код:
[\.\-_A-Za-z0-9]+?@[\.\-A-Za-z0-9]+?[\.A-Za-z0-9]{2,}
Но такое мыло она "не видит": Как правильно подправить, чтобы такое тоже видела?
 

backoff

Client
Регистрация
20.04.2015
Сообщения
6 052
Благодарностей
6 481
Баллы
113
  • Спасибо
Реакции: Enigma

kerteis

Новичок
Регистрация
29.11.2015
Сообщения
7
Благодарностей
0
Баллы
1
Подскажите пожалуйста, пытаюсь составить регулярное выражение, парсер сниппетов бинг, там в тегах цифры меняются,
<span class="c_tlbxH" h="BASE:CACHEDPAGEDEFAULT" k="SERP,5169.1"></span>
<span class="c_tlbxH" h="BASE:CACHEDPAGEDEFAULT" k="SERP,5182.1"></span>
Вот эти цифры меняются, "SERP,5169.1"
как можно это зацепить?
 

backoff

Client
Регистрация
20.04.2015
Сообщения
6 052
Благодарностей
6 481
Баллы
113
что ЭТО зацепить?
всю строку, или то что в кавычках, в каких кавычках и тп

если всю строку можно так
Код:
<span class="c_tlbxH" h="BASE:CACHEDPAGEDEFAULT" k="SERP,.*"></span>
или
Код:
<span class="c_tlbxH" h="BASE:CACHEDPAGEDEFAULT" k=".*"></span>
 
Регистрация
10.01.2019
Сообщения
32
Благодарностей
11
Баллы
8
Подскажите, пожалуйста, как взять первых 10 слов из текста. Спасибо
 

dafaroff

Client
Регистрация
03.05.2011
Сообщения
76
Благодарностей
137
Баллы
33
  • Спасибо
Реакции: ЯуттщЗщыеук

udder

Client
Регистрация
28.03.2017
Сообщения
618
Благодарностей
128
Баллы
43
Здравствуйте, помогите составить регулярку для обработчика Email, поиск по почте получателия и отправителя, информация об этом содержится в заголовке Письма
Пример

Delivered-To: [email protected]
Return-path: <[email protected]>

Пробовал так:
Return-Path:\ <noreply@mail\.ru>[\w\W]*?Delivered-To:\ mail@mail\.ru
Не получилось
Скрин
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 407
Благодарностей
9 115
Баллы
113
Здравствуйте, помогите составить регулярку для обработчика Email, поиск по почте получателия и отправителя, информация об этом содержится в заголовке Письма
Пример

Delivered-To: [email protected]
Return-path: <[email protected]>

Пробовал так:
Return-Path:\ <noreply@mail\.ru>[\w\W]*?Delivered-To:\ mail@mail\.ru
Не получилось
Скрин
Попробуйте экранировать угловые скобки < и >, они являются мета-символами и требуют экранирования.
Также в регулярке лишняя угловая скобка есть, скорее всего она и нарушает поиск.

upload_2019-2-2_18-46-36.png
 
  • Спасибо
Реакции: udder

udder

Client
Регистрация
28.03.2017
Сообщения
618
Благодарностей
128
Баллы
43
(?i)(Return-Path:\ <noreply@now-dns\.com>\s+Delivered-To:\ 2plh0za@mail\.ru|Delivered-To:\ 2plh0za@mail\.ru\s+Return-Path:\ <noreply@now-dns\.com>)
Вот такая регулярка сработала. Поиск по получателю и отправителю из заголовков письма
Попробуйте экранировать угловые скобки < и >, они являются мета-символами и требуют экранирования.
Также в регулярке лишняя угловая скобка есть, скорее всего она и нарушает поиск.
 

Unipostmaster

Client
Регистрация
19.01.2014
Сообщения
20
Благодарностей
3
Баллы
3
Приветствую!
В базе пользователей сайта нашел много пользователей с размноженными емейлами от гугла - по типу [email protected] [email protected] [email protected]
Нужна помощь в составлении регулярки которая выдернет все емейлы от gmail.com у которых до собаки стоит более одной точки.
Помогите плиз!
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)