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

ssXXXss

Client
Регистрация
23.12.2014
Сообщения
7 379
Благодарностей
2 041
Баллы
113
как понять 1000 раз, вроде нет ничего затратного по времени, у тебя на странице таких значений много ?
и ты парсишь в цикле ?
можно поставить по короткому совпадению и пробел убрать в конце
 

CmauJluk

Client
Регистрация
25.12.2017
Сообщения
287
Благодарностей
60
Баллы
28
Помогите выражением взять адрес, он всегда будет разным включая область

<ymaps><ymaps class="ymaps-2-1-60-balloon-content__header">Большое Толбино</ymaps>Московская область<br>Подольский район<br>Большое Толбино</ymaps>
 

Sergodjan

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

<ymaps><ymaps class="ymaps-2-1-60-balloon-content__header">Большое Толбино</ymaps>Московская область<br>Подольский район<br>Большое Толбино</ymaps>
upload_2018-3-21_23-37-8.png


upload_2018-3-21_23-40-42.png
 
  • Спасибо
Реакции: CmauJluk

CmauJluk

Client
Регистрация
25.12.2017
Сообщения
287
Благодарностей
60
Баллы
28

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 436
Благодарностей
9 132
Баллы
113
  • Спасибо
Реакции: CmauJluk

CmauJluk

Client
Регистрация
25.12.2017
Сообщения
287
Благодарностей
60
Баллы
28

JanCarlo

Client
Регистрация
04.03.2018
Сообщения
358
Благодарностей
40
Баллы
28
Ребят, очень простой вопрос - как удалить дубли строк, и в некоторых строках удалить окончания и дописать сайт?
1)нужно удалить все строки дубликаты
2)убрать окончания #loan=72
3)дописать везде www.site.com перед /used/

помогите составить регулярку?
Заранее спасибо и лайк))
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 122
Баллы
113
Ребят, очень простой вопрос - как удалить дубли строк, и в некоторых строках удалить окончания и дописать сайт?
Очень простой C# код
C#:
IZennoList list = project.Lists["List"]; // список проекта, в который класть результат
string input = project.Variables["html"].Value; // переменная проекта с кодом

lock (SyncObjects.ListSyncer) {
    list.AddRange(Regex.Matches(input, @"/used/.*?(?="")")
        .Cast<Match>()
        .Where(m => m.Success)
        .Select(m => "www.site.com" + m.Value
            .Replace("#loan=72", "")
            .Trim())
        .Distinct());
}
 
  • Спасибо
Реакции: JanCarlo

tatarin

Client
Регистрация
28.10.2012
Сообщения
805
Благодарностей
137
Баллы
43
Не поможете?

Есть такой код:
Код:
<?php
}
?>

          <div id="primary" class="content-area">
            <main id="main" class="site-main">

            <?php
            while ( have_posts() ) : the_post();

              get_template_part( 'template-parts/content', get_post_type() );

              dream_post_navigation();

              // If comments are open or we have at least one comment, load up the comment template.
              if ( comments_open() || get_comments_number() ) :
                comments_template();
              endif;

            endwhile; // End of the loop.
            ?>

            </main><!-- #main -->
          </div><!-- #primary -->

<?php
if ($blog_layout == 'right_sidebar') {
?>
Нужно найти и удалить:

// If comments are open or we have at least one comment, load up the comment template.
if ( comments_open() || get_comments_number() ) :
comments_template();
endif;

Кол-во отступов всегда может отличаться! Спасибо!
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 122
Баллы
113
Не поможете?

Есть такой код:
Нужно найти и удалить:
В лёгкую нашёл и удалил, вот:
Код:
<?php
}
?>

          <div id="primary" class="content-area">
            <main id="main" class="site-main">

            <?php
            while ( have_posts() ) : the_post();

              get_template_part( 'template-parts/content', get_post_type() );

            endwhile; // End of the loop.
            ?>

            </main><!-- #main -->
          </div><!-- #primary -->

<?php
if ($blog_layout == 'right_sidebar') {
?>
:D
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 122
Баллы
113
Ну или
Код:
.*If comments[\w\W]*?endif;
заменить на пустоту.
 
  • Спасибо
Реакции: tatarin

Vlad_Curnoi

Client
Регистрация
09.08.2017
Сообщения
469
Благодарностей
198
Баллы
43
ТОварищи подскажите регулярку чтоб получить из url только домен
Например есть несколько вариант
https://toster.ru/
https://www.toster.ru/
toster.ru
нужна регулярка чтоб получить только "toster"
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
ТОварищи подскажите регулярку чтоб получить из url только домен
Например есть несколько вариант
https://toster.ru/
https://www.toster.ru/
toster.ru
нужна регулярка чтоб получить только "toster"
регулярка прокатит только на однотипных записях. Если домен будет 3го уровня, если будут сабдомены и т.д., алгоритм вычисления будет куда сложнее
в общем на твоих записях прокатит это
Код:
(?<=https?://(www\.)?)\w+(-\w+)*(?=\.\w+/)
 

Vlad_Curnoi

Client
Регистрация
09.08.2017
Сообщения
469
Благодарностей
198
Баллы
43
регулярка прокатит только на однотипных записях. Если домен будет 3го уровня, если будут сабдомены и т.д., алгоритм вычисления будет куда сложнее
в общем на твоих записях прокатит это
Код:
(?<=https?://(www\.)?)\w+(-\w+)*(?=\.\w+/)
Неа не катит для доменов без https
 

doc

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

one

Client
Регистрация
22.09.2015
Сообщения
6 833
Благодарностей
1 275
Баллы
113

Vlad_Curnoi

Client
Регистрация
09.08.2017
Сообщения
469
Благодарностей
198
Баллы
43

radv

Client
Регистрация
11.05.2015
Сообщения
3 789
Благодарностей
1 954
Баллы
113
Неа не катит для доменов без https
делаешь предварительную проверку адреса на наличие //, www и точек в адресе (и поддоменов, если нужно, или доменных зон и наличие / в конце) и делаешь switch по которому задаешь значение для регулярки конкретного варианта. Тогда отработает любые варианты, включая кирилицу. Ненужные символы например www. можно заменить на пустоту
 
Последнее редактирование:

doc

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

radv

Client
Регистрация
11.05.2015
Сообщения
3 789
Благодарностей
1 954
Баллы
113
для таких доменов, чтобы всё работало 100% нужно собрать все возможные домены 2го уровня
можно в процессе собирать все адреса, а потом составить справочник по поддоменам
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
можно в процессе собирать все адреса, а потом составить справочник по поддоменам
конечно можно, но это всё равно подразумевает ручной анализ, опять же, это не регулярка. Вообще можно заведомо считать, что если домен по длине меньше 3-4х символов, то он нам не подходит и смотреть надо на уровень выше, но это тоже не 100% результат будет
 

konfuciy

Client
Регистрация
07.05.2014
Сообщения
1 402
Благодарностей
131
Баллы
63
ТОварищи подскажите регулярку чтоб получить из url только домен
Например есть несколько вариант
https://toster.ru/
https://www.toster.ru/
toster.ru
нужна регулярка чтоб получить только "toster"
(?<=(^|\n)(http(s|)\:\/\/|)+(www\.|)+)(?!w+\.)[\d\w\-]+?(?=(\.\w+)+(\/|)\n)
или
(?m)(?<=^(http?s?://)?(www\.)?)(?!w+\.)[\d\w\-]+?(?=(\.\w+)+\/?$)

в конструкторе работает, в том числе и для таких доменов http://www.360websolutions.co.uk/
 
Последнее редактирование:

TazMan

Client
Регистрация
05.01.2017
Сообщения
236
Благодарностей
37
Баллы
28

doc

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

TazMan

Client
Регистрация
05.01.2017
Сообщения
236
Благодарностей
37
Баллы
28
Спасибствуем ! работает :-)
 

Vinovnik

Client
Регистрация
10.08.2016
Сообщения
354
Благодарностей
106
Баллы
43
Помогите, взял кусок кода, удалил все теги в итоге получилось в переменной такое
Код:
                            Год выпуска:   
                            2018   
                       
               
                                       
                            Жанр:   
                            драма, спорт   
                       
               
                                       
                            Страна:   
                            Россия   
                       
               

                       
                            Продолжительность:   
                            139 мин.   
                       

                                       
                            Премьера (мир):   
                            20 апреля 2018   
                       
               
                                       
                            Премьера (РФ):   
                            19 апреля 2018   
                       
               
               
                                       
                            Режиссер:   
                            Данила Козловский   
                       
               
                                       
                            В ролях:   
                            Андрей Смоляков, Данила Козловский, Александр Ильин мл., Игорь Гордин, Виктор Вержбицкий, Владимир Ильин, Павел Ворожцов, Ирина Горбачева, Ольга Зуева, Мария Лобанова   
                       
               
                                       
                            Автор сценария:   
                            Данила Козловский, Андрей Золотарев, Сергей Четверухин   
                       
               
                                       
                            Продюсер:   
                            Данила Козловский, Леонид Верещагин, Петр Ануров   
                       
               
                                       
                            Оператор:   
                            Федор Лясс   
                       
               
               
                                       
                            Художник:   
                            Варя Авдюшко, Сергей Агин
Как это привести в нормальный вид?
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 684
Благодарностей
4 641
Баллы
113
Помогите, взял кусок кода, удалил все теги в итоге получилось в переменной такое
Код:
                            Год выпуска:  
                            2018  
                      
              
                                      
                            Жанр:  
                            драма, спорт  
                      
              
                                      
                            Страна:  
                            Россия  
                      
              

                      
                            Продолжительность:  
                            139 мин.  
                      

                                      
                            Премьера (мир):  
                            20 апреля 2018  
                      
              
                                      
                            Премьера (РФ):  
                            19 апреля 2018  
                      
              
              
                                      
                            Режиссер:  
                            Данила Козловский  
                      
              
                                      
                            В ролях:  
                            Андрей Смоляков, Данила Козловский, Александр Ильин мл., Игорь Гордин, Виктор Вержбицкий, Владимир Ильин, Павел Ворожцов, Ирина Горбачева, Ольга Зуева, Мария Лобанова  
                      
              
                                      
                            Автор сценария:  
                            Данила Козловский, Андрей Золотарев, Сергей Четверухин  
                      
              
                                      
                            Продюсер:  
                            Данила Козловский, Леонид Верещагин, Петр Ануров  
                      
              
                                      
                            Оператор:  
                            Федор Лясс  
                      
              
              
                                      
                            Художник:  
                            Варя Авдюшко, Сергей Агин
Как это привести в нормальный вид?
а нормальный это какой?
 

inilim

Client
Регистрация
16.09.2017
Сообщения
446
Благодарностей
170
Баллы
43
  • Спасибо
Реакции: Роман

Vinovnik

Client
Регистрация
10.08.2016
Сообщения
354
Благодарностей
106
Баллы
43
а нормальный это какой?
Код:
Год выпуска:   
2018   
Жанр:   
драма, спорт   
Страна:   
Россия   
Продолжительность:   
139 мин.   
Премьера (мир):   
20 апреля 2018   
Премьера (РФ):   
19 апреля 2018   
Режиссер:   
Данила Козловский   
В ролях:   
Андрей Смоляков, Данила Козловский, Александр Ильин мл., Игорь Гордин, Виктор Вержбицкий, Владимир Ильин, Павел Ворожцов, Ирина Горбачева, Ольга Зуева, Мария Лобанова   
Автор сценария:   
Данила Козловский, Андрей Золотарев, Сергей Четверухин   
Продюсер:   
Данила Козловский, Леонид Верещагин, Петр Ануров   
Оператор:   
Федор Лясс   
Художник:   
Варя Авдюшко, Сергей Агин
 

Vinovnik

Client
Регистрация
10.08.2016
Сообщения
354
Благодарностей
106
Баллы
43

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