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

orka13

Client
Регистрация
07.05.2015
Сообщения
2 160
Благодарностей
2 159
Баллы
113
слова;;слова;;слова;;слова;;слова - здесь 5
слова;;слова;;слова - а тут 3
Отсюда делаем вывод что разделителей на 1 шт меньше чем слов всегда. Значит можно тогда считать разделители вместо слов, если со словами проблемно:
Код:
^([^;\r\n]*;;[^;\r\n]*){2,4}$
 
  • Спасибо
Реакции: bizzon

b1zar

Client
Регистрация
29.06.2019
Сообщения
107
Благодарностей
65
Баллы
28
Помогите с регуляркой. Не могу догнать как сделать.
Код:
[\w-]+\.\w+(?=/|\n|$)\/+[a-zA-Zа-яА-ЯёЁ0-9_-]*
Загоняю в нее ссылки такого типа: http://videobox.tv/,http://videobox.tv/video/28592680/ , а получаю videobox.tv/,videobox.tv/video. В принципе все верно отрабатывает, кроме одного нюанса, как сделать не могу понять. Как в ссылках такого типа, http://videobox.tv/, когда только домен, что бы при regex он мне выдавал вот так videobox.tv, а не вот такvideobox.tv/?
 

realty

Client
Регистрация
25.10.2014
Сообщения
96
Благодарностей
11
Баллы
8
Помогите, пожалуйста с регуляркой замены!
Нужно заключить индексы массива $mas в кавычки:
Было - $mas[bla-bla], сделать - $mas['bla-bla']. bla-bla разные. Я так понимаю нужно сделать замену $mas[ на $mas[' и ] на '].
Спасибо за любой совет.
 

ErikMoor

Client
Регистрация
24.03.2016
Сообщения
121
Благодарностей
22
Баллы
18
Приветствую
Не где, не могу найти регулярку по разбитию слова на буквы, цифры, символы с добавлением всего этого в список
К примеру есть исходные данные: tom:[email protected]
На выходе должно получиться список вида:
t
o
m
:
c
d
@
m
a
i
l
.
r
u

За ранее спасибо
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 368
Благодарностей
8 648
Баллы
113
Приветствую
Не где, не могу найти регулярку по разбитию слова на буквы, цифры, символы с добавлением всего этого в список
К примеру есть исходные данные: tom:[email protected]
На выходе должно получиться список вида:
t
o
m
:
c
d
@
m
a
i
l
.
r
u

За ранее спасибо
43107
 
  • Спасибо
Реакции: ErikMoor

ErikMoor

Client
Регистрация
24.03.2016
Сообщения
121
Благодарностей
22
Баллы
18
Странные дела, в тестере работает, а в проекте нет

43108


43109
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 368
Благодарностей
8 648
Баллы
113

deskuznetsov

Client
Регистрация
29.08.2019
Сообщения
520
Благодарностей
356
Баллы
63
Помогите, не могу спарсить сообщения.

Вот кусок кода что вокруг сообщения


C#:
</div>
<div class="cPost_contentWrap ipsPad">
<div data-role="commentContent" class="ipsType_normal ipsType_richText ipsContained" data-controller="core.front.core.lightboxedImages">
<p>
Это текст сообщения который нужно спарсить! Бла-бла-бла...
</p>
</div>
<div class="ipsItemControls iIC-no-buttons iIC-no-react">
<div data-controller="core.front.core.reaction" class="ipsItemControls_right ipsClearfix ">
<div class="ipsReact ipsPos_right">
Как с помощью регулярного выражения вытаскивать именно текст сообщения?

Вариант в конструкторе указать до текста и после <p> </p>, не работает, так как парсит тогда лишнее.
 

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 304
Благодарностей
5 421
Баллы
113
Вариант в конструкторе указать до текста и после <p> </p>, не работает, так как парсит тогда лишнее.
Если там несколько этих
<p>
То будет парсит треш, так регулярки устроены. Надо весь код видеть, что бы помочь. В файл закинь код и скинь в тему. Поможем.
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 368
Благодарностей
8 648
Баллы
113
Помогите, не могу спарсить сообщения.

Вот кусок кода что вокруг сообщения


C#:
</div>
<div class="cPost_contentWrap ipsPad">
<div data-role="commentContent" class="ipsType_normal ipsType_richText ipsContained" data-controller="core.front.core.lightboxedImages">
<p>
Это текст сообщения который нужно спарсить! Бла-бла-бла...
</p>
</div>
<div class="ipsItemControls iIC-no-buttons iIC-no-react">
<div data-controller="core.front.core.reaction" class="ipsItemControls_right ipsClearfix ">
<div class="ipsReact ipsPos_right">
Как с помощью регулярного выражения вытаскивать именно текст сообщения?

Вариант в конструкторе указать до текста и после <p> </p>, не работает, так как парсит тогда лишнее.
Можно так попробовать:

43420




А результат потом очистить от html-тегов с помощью Обработка текста - Замена (Regex) - Замена на пустоту.
Регулярка: <.*?>
 
  • Спасибо
Реакции: igzdizain

deskuznetsov

Client
Регистрация
29.08.2019
Сообщения
520
Благодарностей
356
Баллы
63
/
 
Последнее редактирование:

Aleks18

Client
Регистрация
03.01.2018
Сообщения
11
Благодарностей
2
Баллы
3
Каким образом с помощью регулярки можно удалить конструкцию .txt из следующего кода
<title>Бесплатные хостинги для создания сайтов обзор лучших вариантов.txt-83</title>
<h1>Бесплатные хостинги для создания сайтов обзор лучших вариантов.txt</h1>
alt="Бесплатные хостинги для создания сайтов обзор лучших вариантов.txt |фото 702
 

Reactor3000

Client
Регистрация
25.09.2019
Сообщения
434
Благодарностей
262
Баллы
63
Каким образом с помощью регулярки можно удалить конструкцию .txt из следующего кода
<title>Бесплатные хостинги для создания сайтов обзор лучших вариантов.txt-83</title>
<h1>Бесплатные хостинги для создания сайтов обзор лучших вариантов.txt</h1>
alt="Бесплатные хостинги для создания сайтов обзор лучших вариантов.txt |фото 702
C#:
\.txt.*?
заменить на пустоту
 

Aleks18

Client
Регистрация
03.01.2018
Сообщения
11
Благодарностей
2
Баллы
3
Спасибо
 

Aleks18

Client
Регистрация
03.01.2018
Сообщения
11
Благодарностей
2
Баллы
3
Столкнулся еще с такой проблемой выпилить из файлов вот такую конструкцию
<div class="embed">
<iframe src="https://www.youtube.com/embed/имя ролика" width="600" height="338" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>
</div>
Нужно <div class="embed">.</div> заменить на пустоту.
Только как это записать с помощью регулярки ума не приложу
Простите, но я ничего не понимаю в регулярных выражениях.
 

Sanekk

Client
Регистрация
24.06.2016
Сообщения
987
Благодарностей
388
Баллы
63
Столкнулся еще с такой проблемой выпилить из файлов вот такую конструкцию
<div class="embed">
<iframe src="https://www.youtube.com/embed/имя ролика" width="600" height="338" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>
</div>
Нужно <div class="embed">.</div> заменить на пустоту.
Только как это записать с помощью регулярки ума не приложу
Простите, но я ничего не понимаю в регулярных выражениях.
если тебе имя ролика нужно, то вот
C#:
(?<=embed/).*?(?=")
 

Aleks18

Client
Регистрация
03.01.2018
Сообщения
11
Благодарностей
2
Баллы
3
нет имя ролика мне не нужно. Мне нужно вырезать весь div с классом
embed со страницы
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 368
Благодарностей
8 648
Баллы
113
Столкнулся еще с такой проблемой выпилить из файлов вот такую конструкцию
<div class="embed">
<iframe src="https://www.youtube.com/embed/имя ролика" width="600" height="338" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>
</div>
Нужно <div class="embed">.</div> заменить на пустоту.
Только как это записать с помощью регулярки ума не приложу
Простите, но я ничего не понимаю в регулярных выражениях.
В составе ПроджектМейкера есть хороший конструктор рег-выражений,
попробуйте использовать его, в некоторых несложных ситуациях он хорошо помогает.
Далее эту регулярку используйте в экшене Обработка текста - Замена (на пустоту) в режиме Regex.

43860
 

Aleks18

Client
Регистрация
03.01.2018
Сообщения
11
Благодарностей
2
Баллы
3
Спасибо большое, очень вам благодарен.
 
  • Спасибо
Реакции: Sergodjan

Hannes

Client
Регистрация
03.02.2016
Сообщения
486
Благодарностей
234
Баллы
43
Здравствуйте! Подскажите, пожалуйста, как взять последнее совпадение?

000 | 111 | 777 | 999 | 222 | 000 | Нужный текст
000 | Нужный текст
000 | 111 | 777 | 999 | Нужный текст

Количество "|" разное, нужно брать содержимое после последнего "|".
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 368
Благодарностей
8 648
Баллы
113
Здравствуйте! Подскажите, пожалуйста, как взять последнее совпадение?

000 | 111 | 777 | 999 | 222 | 000 | Нужный текст
000 | Нужный текст
000 | 111 | 777 | 999 | Нужный текст

Количество "|" разное, нужно брать содержимое после последнего "|".
Регулярка:
Код:
([^\|]+$)
43916
 
  • Спасибо
Реакции: Hannes

Hannes

Client
Регистрация
03.02.2016
Сообщения
486
Благодарностей
234
Баллы
43
@sergodjan66 спасибо!
Ещё одно решение подсказали в личку:
C#:
return project.Variables["var"].Value.Split('|').Last();
 
  • Спасибо
Реакции: Sanekk и Sergodjan

alekwuy

Client
Регистрация
06.04.2013
Сообщения
1 631
Благодарностей
461
Баллы
83
Поиск числа больше 0

(?<=(\D|^))[1-9]\d*


не работает при минусовом значении -1 и тд
как можно исправить?
 

igoreff

Client
Регистрация
24.02.2011
Сообщения
176
Благодарностей
20
Баллы
18
Что то ничего не нашел похожего, подскажите пожалуйста. Нужна регулярка для удаления предложений например меньше 40 символов, оканчивается предложение на обычные знаки - точка, !, ?
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 368
Благодарностей
8 648
Баллы
113
Что то ничего не нашел похожего, подскажите пожалуйста. Нужна регулярка для удаления предложений например меньше 40 символов, оканчивается предложение на обычные знаки - точка, !, ?
Вот так попробуйте, как вариант.
Правда, нужно чтобы в исх. тексте предложения были по одному на строку.
Регулярка:
Код:
(?<=(\n|\r\n|^)).{40,}(?=(\n|\r\n|$))
И можно напрмиер из исх. текста брать предложение и проверять его этой регуляркой,
если взята пустота, то значит берем другое предложение и опять проверяем.


44611
 
  • Спасибо
Реакции: igoreff

igoreff

Client
Регистрация
24.02.2011
Сообщения
176
Благодарностей
20
Баллы
18
Мне бы как раз не хотелось текст на строки разбивать.
 

Shining

Client
Регистрация
25.05.2018
Сообщения
35
Благодарностей
0
Баллы
6
Ребят, помогите пожалуйста кто знает. Нужна регулярка, что найдёт все буквы или словосочетания не входящие в метатеги<>html.
Есть страница кода, а в ней нужно заменить конкретную букву. Естественно исключением должны быть совпадения из метатегов:bs:
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 368
Благодарностей
8 648
Баллы
113
Ребят, помогите пожалуйста кто знает. Нужна регулярка, что найдёт все буквы или словосочетания не входящие в метатеги<>html.
Есть страница кода, а в ней нужно заменить конкретную букву. Естественно исключением должны быть совпадения из метатегов:bs:
Если буква входит в какое то сочетание, то можно взять целиком это сочетание и заменить на правильное.
Вряд ли в тегах будет такое совпадение.
 
  • Спасибо
Реакции: Shining

Shining

Client
Регистрация
25.05.2018
Сообщения
35
Благодарностей
0
Баллы
6
Если буква входит в какое то сочетание, то можно взять целиком это сочетание и заменить на правильное.
Вряд ли в тегах будет такое совпадение.
Увы нет словосочетания, а просто буква "а", что нужно заменить в соответствии с другим написанием(
 

сергос

Client
Регистрация
30.03.2015
Сообщения
27
Благодарностей
13
Баллы
3
Рябят помогите с регуляркой родной помощник не справляется.
дано урл нада с него взять 2740
ссылка-ссылка-ссылка-ссылка-ссылка-ссылка-ссылка-ссылка-2740.html
Юзал конструктор но из-за многих ---- берет не то что нужно.
дергать только число тоже не вариант в самой ссылке кроме нужного могут встречатся и другие числа
ссылка-ссылка-15лка-ссылка-сс36ка-ссылка-ссылка-ссылка-2740.html
а нужно именно то что в конце
 
Последнее редактирование модератором:

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