Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Закладки » Регулярные выражения

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71

Открыть новую тему     Написать ответ в эту тему

leftMIND

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
   Регулярные выражения
Обучающий материал
  • Книги    
  • Шпаргалки: от AZJIO (AutoIt3, PCRE) от Dave Child
  • wikipedia.org - Регулярные выражения на wiki  
  • edlinsoft.blogspot.com - Регулярные выражения в .NET Framework  
  • php.ru - Синтаксис регулярных выражений  
  • php.net - Синтаксис регулярных выражений  
  • regexpstudio.com - Регулярные выражения для Delphi  
    Официальные источники:
  • docs.notepad-plus-plus.org - Официальный источник Notepad++ (англ. яз.)  
  • pcre.org - Официальный справочник движка PCRE (англ. яз.)  

  •    Тестирование регулярных выражений
    Программы
    Онлайн сервисы
  • RegexBuddy - крутая и платная  
  • RegExp - бесплатно, AZJIO, PCRE, AutoIt3  
  • Expresso  
  • The Regex Coach  
  • RegExstar, Github (AutoHotKey, PCRE)
  • Обзор программ от ManHunter    
  • regexr.com здесь в Community множество готовых регулярных выражений  
  • pagecolumn.com - для javascript  
  • pagecolumn.com - для php  
  • cuneytyilmaz.com - для javascript  
  • php-include.ru - на флеш-плеере  
  • regex101.com  
  • easyregexp.ru  
  • debuggex.com - показывает структурно  

  •    Схожие темы
  • javascript регулярные выражения
  • PHP: Регулярные выражения (RegExp, Regular, eregi, preg)
  • Игра - Регулярно выражайтесь!
     
    первое сообщение темы...
    Обсуждение шапки данной темы ведётся в этой теме
    Рекомендации по составлению вопросов в данной теме:

  • Всего записей: 33 | Зарегистр. 07-04-2002 | Отправлено: 23:55 15-10-2002 | Исправлено: AZJIO, 15:18 12-02-2021
    D1D1D1D

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    los
    /е/d/p — это вроде как уже не регулярка, а какой то формат для sed, ну а если просто вводить [^е]ё, то тогда ищутся буквы Ё — перед которыми могут быть любые буквы, кроме Е

    Всего записей: 1036 | Зарегистр. 05-04-2010 | Отправлено: 23:17 17-08-2021
    los

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    D1D1D1D

    Цитата:
    /е/d/p — это вроде как уже не регулярка, а какой то формат для sed, ну а если просто вводить [^е]ё, то тогда ищутся буквы Ё — перед которыми могут быть любые буквы, кроме Е

    $ cat file
    абвгдеё
    абвгде
    абвгдё
    АБВГДЕЁ
    АБВГДЕ
    АБВГДЁ
     
    $ sed -En '/[^е]ё/p' file
    абвгдё

    Всего записей: 4608 | Зарегистр. 08-09-2001 | Отправлено: 23:34 17-08-2021
    D1D1D1D

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    los
    Там явно опции sedа примешиваются, а нужен чистый regex

    Всего записей: 1036 | Зарегистр. 05-04-2010 | Отправлено: 02:34 18-08-2021
    los

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    D1D1D1D

    Цитата:
    ну а если просто вводить [^е]ё, то тогда ищутся буквы Ё — перед которыми могут быть любые буквы, кроме Е

    видимо, я что-то делаю не так, но notepad++ использую первый раз.

     

    Цитата:
    Там явно опции sedа примешиваются, а нужен чистый regex

    выложите файл для примера.

    Всего записей: 4608 | Зарегистр. 08-09-2001 | Отправлено: 11:35 18-08-2021
    Alex_Piggy

    Advanced Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Доброе время, D1D1D1D
    Строки в которых от начала строки до буквы "ё" (и от нее до конца строки) нет ни одной "е"  

    Код:
    ^[^еЕ]*[ёЁ][^еЕ]*$

    NPP совместим с PCRE.
    UPD. Наверное все-таки стоит исключить и \r\n

    Код:
    ^[^еЕ\r\n]*[ёЁ][^еЕ\r\n]*$

    Всего записей: 1846 | Зарегистр. 07-08-2002 | Отправлено: 12:19 18-08-2021 | Исправлено: Alex_Piggy, 12:23 18-08-2021
    D1D1D1D

    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Alex_Piggy
    Спасибо!

    Всего записей: 1036 | Зарегистр. 05-04-2010 | Отправлено: 12:39 18-08-2021
    Alinalessio

    Junior Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Помогите пожалуйста написать регулярное выражение

    Код:
    Меньше либо равно 5000

    Всего записей: 183 | Зарегистр. 21-06-2010 | Отправлено: 17:05 19-08-2021
    los

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Меньше либо равно 5000

    один из вариантов
    $ jot 6000 | grep -E '^([0-9]|[1-9][0-9]|[1-9][0-9]{2}|[1-4][0-9]{3}|5000)$' | wc -l
        5000
     
    $ jot 5005 | grep -vE '^([0-9]|[1-9][0-9]|[1-9][0-9]{2}|[1-4][0-9]{3}|5000)$'
    5001
    5002
    5003
    5004
    5005

    Всего записей: 4608 | Зарегистр. 08-09-2001 | Отправлено: 00:03 20-08-2021 | Исправлено: los, 00:03 20-08-2021
    trustworthy

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите, пожалуйста, как достать значение параметра "fiasGuid" bbfc92f6-9c7a-40b8-8261-78e6ef0813ff, причем вхождение в строку может быть разное, типа:
    1 пример: {"row":"1","visible":TRUE,"autofill":TRUE,"AddType":"ADDRESS","fias":0,"fiasGuid":"bbfc92f6-9c7a-40b8-8261-78e6ef0813ff"}
    2 пример: {"row":"50","rowin":"40","visible":FALSE,"AddType":"ADDRESS","fias":0,"fiasGuid":"9fb3d08f-ff93-46a4-859a-1ab0026430c2"}

    Всего записей: 9 | Зарегистр. 04-05-2008 | Отправлено: 03:37 20-08-2021
    los

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    trustworthy,
    если это значение - uuid, то один из вариантов для grep/sed и подобных:
    $ grep -Eo '[[:xdigit:]]{8}(-[[:xdigit:]]{4}){3}-[[:xdigit:]]{12}' file
    bbfc92f6-9c7a-40b8-8261-78e6ef0813ff
    9fb3d08f-ff93-46a4-859a-1ab0026430c2

     

    Всего записей: 4608 | Зарегистр. 08-09-2001 | Отправлено: 10:46 20-08-2021
    iNNOKENTIY21



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    trustworthy

    Цитата:
    Подскажите, пожалуйста, как достать значение параметра "fiasGuid" bbfc92f6-9c7a-40b8-8261-78e6ef0813ff, причем вхождение в строку может быть разное, типа:
    1 пример: {"row":"1","visible":TRUE,"autofill":TRUE,"AddType":"ADDRESS","fias":0,"fiasGuid":"bbfc92f6-9c7a-40b8-8261-78e6ef0813ff"}
    2 пример: {"row":"50","rowin":"40","visible":FALSE,"AddType":"ADDRESS","fias":0,"fiasGuid":"9fb3d08f-ff93-46a4-859a-1ab0026430c2"}

    Если это json?? (тут не валидный json, TRUE и FALSE должны быть в кавычках), то и работать с ним, как с json.

    Всего записей: 3019 | Зарегистр. 16-08-2012 | Отправлено: 10:51 20-08-2021
    Romul81



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    trustworthy (Пост)

    Цитата:
    как достать значение параметра "fiasGuid" bbfc92f6-9c7a-40b8-8261-78e6ef0813ff

     

    Код:
    "fiasGuid"\s*:\s*"(\b[0-9a-f]{8}\b-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-\b[0-9a-f]{12}\b)"

    Сам uuid без кавычек находится в захваченной группе $1.

    Всего записей: 1310 | Зарегистр. 03-03-2008 | Отправлено: 12:58 20-08-2021
    trustworthy

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    los, iNNOKENTIY21, Romul81,
     
    Спасибо! Все, получилось.

    Всего записей: 9 | Зарегистр. 04-05-2008 | Отправлено: 06:25 24-08-2021
    Eukhx

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Подскажите пожалуйста, как из текста удалить всю информацию, заключённую в скобочки? Вместе с ними (скобками). Пример:
     
    (текст1) текст2 - текст3 (текст4/текст5) (текст6) текст7

    Всего записей: 31 | Зарегистр. 01-01-2021 | Отправлено: 19:05 25-08-2021
    los

    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Eukhx,
    попробуйте
    Код:
    ([^()]*)

    $ sed 's/([^()]*)//g' file
     текст2 - текст3   текст7

    но если текст именно такого формата, возможно лучше использовать awk или cut, чтобы не было чехарды с пробелами и подойдет для всех вариантов скобок
    $ cat file | cut -d' ' -f2-4,7
    текст2 - текст3 текст7
     
    $ awk '{print $2, $3, $4, $7}' file
    текст2 - текст3 текст7

     

    Всего записей: 4608 | Зарегистр. 08-09-2001 | Отправлено: 22:20 25-08-2021
    iNNOKENTIY21



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    Подскажите пожалуйста, как из текста удалить всю информацию, заключённую в скобочки? Вместе с ними (скобками). Пример:
     
    (текст1) текст2 - текст3 (текст4/текст5) (текст6) текст7
    powershell
    Код:
    '(текст1) текст2 - текст3 (текст4/текст5) (текст6) текст7' -replace '\(.*?\)\s'

    Всего записей: 3019 | Зарегистр. 16-08-2012 | Отправлено: 23:09 25-08-2021
    bytie

    Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Для захвата скобок с содержимым я бы предложил

    Код:
    \([^)]+\)

    Всего записей: 261 | Зарегистр. 18-08-2005 | Отправлено: 08:12 26-08-2021
    Eukhx

    Newbie
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    los, iNNOKENTIY21, bytie
    Спасибо большое.

    Всего записей: 31 | Зарегистр. 01-01-2021 | Отправлено: 19:42 26-08-2021
    Fafy

    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    В текстовом файле словарика в кодировке Windows-1251 Unix (LF) нужно удалить абзацы в конце которого стоит символ
    Код:
    '

    Для поиска можно, конечно, использовать
    Код:
    '\n
    но вручную удалять найденные абзацы оооочень долго. Какое выражение нужно использовать для поля замены чтобы искало один символ в конце абзаца, а удалялся весь абзац в конце которого найден символ ' и годится ли в этом случае
    Код:
    '\n
    для поля найти?

    Всего записей: 571 | Зарегистр. 25-10-2010 | Отправлено: 13:11 08-09-2021
    regist123



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Fafy, поставить галочку на регулярные выражения.
    Найти

    Код:
    ([^\r\n]+)'\n

    заменить на пусто (ничего не указывать).
    Это то что нужно или нет? Если нет, то тогда приводите пример текста, чтобы понятней было что нужно и было на чём тестировать.

    ----------
    Раздачи и акции

    Всего записей: 6814 | Зарегистр. 20-03-2009 | Отправлено: 13:46 08-09-2021
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71

    Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Закладки » Регулярные выражения


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.Board
    © Ru.Board 2000-2020

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru