Regexp - шпаргалка по регулярным выражениям

Тема в разделе "Решение различных задач по парсингу", создана пользователем kagorec, 19 мар 2012.

  1. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.431
    Адрес:
    Latvia
    Код:
    re:(.*?){sep}(.*?){sep}(.*?){sep}(.*?){sep}.*$|$1{sep}$2{sep}$3{sep}$4
     
    xLime и dimochkaorg нравится это.
  2. dimochkaorg

    dimochkaorg Active Member Пользователи

    Регистрация:
    25 мар 2017
    Сообщения:
    181
    Огромнейшее спасибо.
     
  3. vanchelos

    vanchelos New Member Пользователи

    Регистрация:
    26 авг 2018
    Сообщения:
    12
    Приветствую всех, подскажите регулярку, которая будет работать в программе, есть текст вида:

    A 020093 0020939
    A 828829

    нужно вырезать последовательность цифр с конца если перед ними пробел, а перед пробелом еще последовательность цифр (первая строка в примере), но не вырезать цифры если перед пробелом нет цифр (вторая строка в примере). Собственно выражение [\d]*\K [\d]*$ в программе работать не желает.
     
  4. xLime

    xLime Well-Known Member Супер Модератор Модератор

    Регистрация:
    4 сен 2017
    Сообщения:
    401
    Здравствуйте.

    Попробуйте такой вариант:

    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    upload_2022-11-21_9-26-16.png
     
  5. vanchelos

    vanchelos New Member Пользователи

    Регистрация:
    26 авг 2018
    Сообщения:
    12
    Спасибо, но не совсем то, напишу более подробный пример, например есть такие варианты написания:

    Телевизор samsung A 020093 0020939
    Телевизор samsung A 828829
    Телевизор samsung A88299-1
    Теоретически может и так Телевизор samsung A829929 920912

    Мне нужно взять все, что после samsung, но если есть две последовательности цифр, одну удалить, т.е. получить в итоге:

    A 020093
    A 828829
    A88299-1
    A829929
     
  6. xLime

    xLime Well-Known Member Супер Модератор Модератор

    Регистрация:
    4 сен 2017
    Сообщения:
    401
    Как-то так, видимо:
    Код:
    re:(\d+) \d+|$1
    upload_2022-11-21_10-28-34.png
     
  7. vanchelos

    vanchelos New Member Пользователи

    Регистрация:
    26 авг 2018
    Сообщения:
    12
    Оно, спасибо!
     
  8. smmshik

    smmshik New Member Пользователи

    Регистрация:
    7 май 2022
    Сообщения:
    57
    Город:
    Estonia
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 50 постов.**
     
  9. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Код:
    Что-то{skip}|
    Удалит все от окончания текста до первого встретившегося "Что-то".
     
    smmshik нравится это.
  10. pers

    pers New Member Пользователи

    Регистрация:
    16 июл 2021
    Сообщения:
    12
    Город:
    city
    Приветствую знатоков! Есть вопрос: Как сделать поднятие букв каждого слова? например есть цвет "green gray" а нужно получить "Green Gray"
    из того что есть в инструментах
    [REGUPFIRST]
    [REGDOWN]
    [REGUPALL]
    заглавной получается сделать только 1 букву 1 слова
    Возможно это как-то можно сделать через регулярки
     
    Последнее редактирование: 22 фев 2023
  11. pers

    pers New Member Пользователи

    Регистрация:
    16 июл 2021
    Сообщения:
    12
    Город:
    city
    Сам спросил - сам отвечаю)
    Вот тут есть пример как это сделать
     
    Root нравится это.
  12. vanchelos

    vanchelos New Member Пользователи

    Регистрация:
    26 авг 2018
    Сообщения:
    12
    Всем привет, я снова с вопросом. Есть число:

    265727

    число символов неизвестно, необходимо добавить ведущие нули, чтобы получилось число из 11 символов, вот так:

    00000265727
     
  13. xLime

    xLime Well-Known Member Супер Модератор Модератор

    Регистрация:
    4 сен 2017
    Сообщения:
    401
    Здравствуйте. Попробуйте такой вариант:

    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
     

    Вложения:

    kagorec нравится это.
  14. vanchelos

    vanchelos New Member Пользователи

    Регистрация:
    26 авг 2018
    Сообщения:
    12
    Да, спасибо. Я почти так и сделал только первым выражением так re:^|0000000000000
     
    kagorec нравится это.
  15. strateg2010

    strateg2010 Active Member Пользователи

    Регистрация:
    12 фев 2018
    Сообщения:
    181
    Город:
    порт
    Подскажите пожалуйста регулярку что бы взять с каждого слова первую букву и в конце набор цифр вот пример входящих данных:
    Matras Top 714
    Matras Top 1
    Matras Top 2
    ...
    Но цифр на конце может и не быть
     
  16. xLime

    xLime Well-Known Member Супер Модератор Модератор

    Регистрация:
    4 сен 2017
    Сообщения:
    401
    Здравствуйте. Что-то на коленке соорудил:
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
     

    Вложения:

    Последнее редактирование: 26 июл 2023
    strateg2010 нравится это.
  17. strateg2010

    strateg2010 Active Member Пользователи

    Регистрация:
    12 фев 2018
    Сообщения:
    181
    Город:
    порт
    Спасибо большое! Это то что нужно
     
  18. sinoda

    sinoda New Member Пользователи

    Регистрация:
    10 фев 2012
    Сообщения:
    55
    Город:
    Москва
    Здравствуйте братцы, подскажите как удалить строки содержащие ... с условием, отрицанием, исключением (кроме)?
    Вот есть список урл
    1. domen.ru/ru/aaa.htm
    2. domen.ru/uz/aaa.htm
    3. domen.ru/aaa.htm
    4. domen.ru/rm/aaa.htm
    при обработке регуляркой
    [LINEMODE]re:.*/[a-z]{2}/.*|
    удаляется всё кроме 3 строки, как добавить исключение типа
    [LINEMODE]re:.*/(?!ru)[a-z]{2}/.*|
    и удалить строки с 2 буквами в слешах кроме /ru/ чтобы осталась строка 1 и 3
     
    Последнее редактирование: 28 авг 2023
  19. xLime

    xLime Well-Known Member Супер Модератор Модератор

    Регистрация:
    4 сен 2017
    Сообщения:
    401
    Здравствуйте.

    Что-то вроде этого:
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
     

    Вложения:

    sinoda нравится это.
  20. sinoda

    sinoda New Member Пользователи

    Регистрация:
    10 фев 2012
    Сообщения:
    55
    Город:
    Москва
    Спасибо за Ваш ответ, к сожалению не известен набор из 2-х букв - поэтому скорее всего нужна регулярка
    .*\/(?!ru)[a-z]{2}\/.*| сработала в notepad
     
    Последнее редактирование: 29 авг 2023

Поделиться этой страницей