RegEx Tracer
От: adontz Грузия http://adontz.wordpress.com/
Дата: 05.05.06 13:05
Оценка: 115 (15)
Понадобилось поотлаживать регулдярные выражения для .Net
RxToolkit куда-то потерялся, Regulator скачать не удалось (sourceforge.net был в дауне), утилитка Regex Builder
Автор: VladD2
Дата: 09.07.05
так и не вышла из стостояние беты и падала на моих выражениях. Вобщем оставался только один путь

RegExTracer 1.0

A journey of a thousand miles must begin with a single step © Lau Tsu
Re: RegEx Tracer
От: Odi$$ey Россия http://malgarr.blogspot.com/
Дата: 05.05.06 13:39
Оценка:
Здравствуйте, adontz, Вы писали:

A>Понадобилось поотлаживать регулдярные выражения для .Net

A>RxToolkit куда-то потерялся, Regulator скачать не удалось (sourceforge.net был в дауне), утилитка Regex Builder
Автор: VladD2
Дата: 09.07.05
так и не вышла из стостояние беты и падала на моих выражениях.


А с Expresso что случилось?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: RegEx Tracer
От: adontz Грузия http://adontz.wordpress.com/
Дата: 05.05.06 13:48
Оценка:
Здравствуйте, Odi$$ey, Вы писали:

OE>А с Expresso что случилось?


Во-первых, я о нём не знал, а во-вторых, мне мой способ вывода результатов больше нравится.
A journey of a thousand miles must begin with a single step © Lau Tsu
Re: RegEx Tracer
От: neiroman Украина  
Дата: 05.05.06 16:05
Оценка:
RegexBuddy рулит
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Слова, пустые слова, подумал Стормгрен. Слова, за которые прежде люди дрались и умирали, но никогда больше не станут за них ни умирать, ни драться. И от этого мир станет лучше.
Re[2]: RegEx Tracer
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 05.05.06 16:22
Оценка:
Здравствуйте, Odi$$ey, Вы писали:

OE>А с Expresso что случилось?


Платным стал
... << RSDN@Home 1.2.0 alpha rev. 642>>
AVK Blog
Re[2]: RegEx Tracer
От: kpumuk Украина http://kpumuk.info/
Дата: 05.05.06 20:48
Оценка:
Здравствуйте, neiroman, Вы писали:

N>RegexBuddy рулит


The Regex Coach тоже неплох
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: RegEx Tracer
От: Блудов Павел Россия  
Дата: 06.05.06 01:54
Оценка: :)
Здравствуйте, adontz, Вы писали:

Красотища! Я как лох в Immediate Window регэкспы тестирую
... << RSDN@Home 1.2.0 alpha rev. 642>>
Re: RegEx Tracer
От: adontz Грузия http://adontz.wordpress.com/
Дата: 06.05.06 05:30
Оценка:
Здравствуйте, adontz, Вы писали:

По просьба трудящихся выходит версия 1.1
Исправления

Качать там же

Помните, HTMLayout бесплатен только для бесплатных приложений.
Используйте исходный код этой утилиты с осторожностью, либо переезжайте обратно на IWebBrowser.

A journey of a thousand miles must begin with a single step © Lau Tsu
Re[3]: RegEx Tracer
От: Odi$$ey Россия http://malgarr.blogspot.com/
Дата: 06.05.06 07:04
Оценка:
Здравствуйте, AndrewVK, Вы писали:

OE>>А с Expresso что случилось?

AVK>Платным стал

хм, а я и не заметил, регистрация требуется, но она бесплатная, и у меня заняла минут 5 — заполнил форму, получил ключик, денег никто не просил , версия именно та, что на сайте, 2.1
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: RegEx Tracer
От: Odi$$ey Россия http://malgarr.blogspot.com/
Дата: 06.05.06 07:34
Оценка:
Здравствуйте, adontz, Вы писали:

A>По просьба трудящихся выходит версия 1.1


а как насчет подсветки найденного (в окне Input)?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[4]: RegEx Tracer
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 06.05.06 08:42
Оценка:
Здравствуйте, Odi$$ey, Вы писали:

OE>хм, а я и не заметил, регистрация требуется, но она бесплатная, и у меня заняла минут 5 — заполнил форму, получил ключик, денег никто не просил , версия именно та, что на сайте, 2.1


Ну значит уже вернули обратно.
... << RSDN@Home 1.2.0 alpha rev. 642>>
AVK Blog
Re[3]: RegEx Tracer
От: adontz Грузия http://adontz.wordpress.com/
Дата: 06.05.06 12:23
Оценка:
Здравствуйте, Odi$$ey, Вы писали:

A>>По просьба трудящихся выходит версия 1.1

OE>а как насчет подсветки найденного (в окне Input)?

Найденный блок целиком и так виден внизу, в строчке с серым фоном без отступа. То что ты хочешь наверное имеет смысл и наверное сделаю, но не сегодня — мне лень
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[4]: RegEx Tracer
От: adontz Грузия http://adontz.wordpress.com/
Дата: 06.05.06 13:42
Оценка:
Здравствуйте, adontz, Вы писали:

A>но не сегодня — мне лень


Передумал.
Версия 1.2 позволяет подсвечивать и поле input. Подстветка несколько тормозная, так что её можно выключать.
СКАЧАТЬ
A journey of a thousand miles must begin with a single step © Lau Tsu
Re: RegEx Tracer
От: adontz Грузия http://adontz.wordpress.com/
Дата: 07.05.06 08:18
Оценка:
Здравствуйте, adontz, Вы писали:

Называется угораздило написать что-то хорошее

Итак, версия 1.3

  • Появилась подсветка самого регулярного выражения (правда получилось не совсем так, как задумывалось).
  • Так как оба поля ввода теперь RichTextbox в меню появились Undo/Redo.
  • Появилась возможность копировать текст с заменой '\' на '\\'.
  • Исходники сильно переписаны.
    КАЧАТЬ ТАМ ЖЕ
  • A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[5]: RegEx Tracer
    От: HotDog Швейцария www.denebspace.com
    Дата: 08.05.06 06:39
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Версия 1.2 позволяет подсвечивать и поле input. Подстветка несколько тормозная, так что её можно выключать.

    A>СКАЧАТЬ

    надо бы еще добавить выбор кодировки для Result:



    Ну и не хватает пары фич

    1. RegExp Builder (типа как в Expresso)
    2. Обертки, которая оборачивает регексп с C#/VB.NET код типа:
    private static Regex _regexp = new Regex(@"my regexp", RegexOptions.Compiled);
    Re[6]: RegEx Tracer
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 08.05.06 07:07
    Оценка:
    Здравствуйте, HotDog, Вы писали:

    HD>надо бы еще добавить выбор кодировки для Result:

    HD>

    ОК, подумаю как это по-красивее прикрутить. В принципе это наверное не каждый день надо, так что можно через редактирование HTML шаблона.

    HD>Ну и не хватает пары фич


    HD>1. RegExp Builder (типа как в Expresso)


    Посмотрел его. Этим разве кто-то пользуется? Набрать и быстрее и проще

    HD>2. Обертки, которая оборачивает регексп с C#/VB.NET код типа:

    HD>
    HD>private static Regex _regexp = new Regex(@"my regexp", RegexOptions.Compiled);
    HD>


    Для удобства внедрения в код есть возможность копировать текст с заменой '\' на '\\'. А остальное ИМХО перебор. Хотя наверное можно добавить. Только покажи мне пример на VB, а то я этот язык совсем не знаю
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re: RegEx Tracer
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 08.05.06 08:55
    Оценка:
    Здравствуйте, adontz, Вы писали:

    Очередной апдейт.
    Версия 2.1 (версию 2.0 я просто не успел выставить, поступили новые предложения )

    Скачать
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[2]: RegEx Tracer
    От: c-smile Канада http://terrainformatica.com
    Дата: 08.05.06 22:36
    Оценка: 78 (3)
    Здравствуйте, adontz, Вы писали:

    A>
    [h3]Помните, HTMLayout бесплатен только для бесплатных приложений.


    В этом месяце я собираюсь htmlayout сделать бесплатным для commercial and non-commercial use.
    Stay tuned как говорится.
    Re[3]: RegEx Tracer
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 09.05.06 02:09
    Оценка:
    Здравствуйте, c-smile, Вы писали:

    CS>В этом месяце я собираюсь htmlayout сделать бесплатным для commercial and non-commercial use.


    Извини за личный вопрос, а profit тогда откуда? Только за саппорт?
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[4]: RegEx Tracer
    От: c-smile Канада http://terrainformatica.com
    Дата: 09.05.06 02:18
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Здравствуйте, c-smile, Вы писали:


    CS>>В этом месяце я собираюсь htmlayout сделать бесплатным для commercial and non-commercial use.


    A>Извини за личный вопрос, а profit тогда откуда? Только за саппорт?


    Symantec, Cisco, Real Networks — люди богатые. Я имею ввиду что продажа исходников это деньги.
    Плюс как правило следом за покупкой идут контракты.
    Re: RegEx Tracer
    От: Mamut Швеция http://dmitriid.com
    Дата: 09.05.06 15:15
    Оценка:
    A>Вобщем оставался только один путь

    Хм... Вот на таком вот регэкспе (взято отсюда) dmitriid@gmail.com не работает.

    Или дотнетовские регэксы не являются perl-compatible?
    ... << RSDN@Home 1.2.0 alpha rev. 647>> ... <<Max Rabe — Let's Talk about ...>> ...


    dmitriid.comGitHubLinkedIn
    Re[2]: RegEx Tracer
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 09.05.06 16:09
    Оценка: +2 :)))
    Здравствуйте, Mamut, Вы писали:

    M>Хм... Вот на таком вот регэкспе


    ААААА КАКОЙ УЖАС!!!!
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re: RegEx Tracer
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 15.05.06 19:57
    Оценка:
    Здравствуйте, adontz, Вы писали:

    Опять обновился. Теперь всё гораздо лучше
    HTMLayout не оправдал надежд.
    Подстветка теперь делается через Text Object Model
    Всё настраивается.
    Разбрерусь с Undo/Redo и выпущу уже совсем последнюю версию
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[2]: RegEx Tracer
    От: Блудов Павел Россия  
    Дата: 16.05.06 04:02
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Разбрерусь с Undo/Redo и выпущу уже совсем последнюю версию

    Ты бы ещё настройки сделал. Те, что в RegexOptions. имеются. И выбор между match/split. И, кстати, у Group могут быть вложенные Captures.
    Вобщем, поставь expresso и честно укради у него всё самое лучшее.
    ... << RSDN@Home 1.2.0 alpha rev. 642>>
    Re[3]: RegEx Tracer
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 16.05.06 06:14
    Оценка:
    Здравствуйте, Блудов Павел, Вы писали:

    БП>Ты бы ещё настройки сделал. Те, что в RegexOptions. имеются.


    Хммм а до тебя никто и не проситл Ладно, реализовано. Опции записываются вместе с документом.

    БП>И выбор между match/split.


    Какой в этом смысл при отладке? Переделывать относительно много, так что хочу аргументы

    БП>И, кстати, у Group могут быть вложенные Captures.


    Что это значит?

    БП>Вобщем, поставь expresso и честно укради у него всё самое лучшее.


    Ты быть хоть намекнул


    Если есть пожелания, то формулируйте их понятно. У меня есть время и желание писать и дорабатывать эту утилиту так, как это удобно пользователям, но нету ни времени, ни желания смотреть 1000 и 1 похожую и искать в них что-то положительное.
    Меня всё и так устраивает как есть, но если вам действительно нужна какая-то фича, я её объязательно добавлю.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re: RegEx Tracer
    От: HotDog Швейцария www.denebspace.com
    Дата: 16.05.06 08:10
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Понадобилось поотлаживать регулдярные выражения для .Net


    Ну раз уж такие дела, что RegEx Tracer выполз на codeproject сцену, то поделюсь еще парой багов..

    1. попробуй сделать "Copy C# Code" для выражения где есть ". К примеру

    AssemblyName\s=\s"(?<AssemblyName>[^"]*)"


    Лучше оборачивать в @"" строки, тогда не надо будет миллион слешей рисовать.
    Ну и плюс всякие юникодные префиксы и т.д не забыть.


    2. Насколько я понял, ты используешь RichTextBoxt для Input поля?
    Так вот RichTextBoxt приводит переводы строки из "\r\n" к "\n" форме. Поэтому я некоторе время не мог понять, почему regexp, который у тебя нормально отрабатывает, не пашет в коде и Expresso.
    Для примера можешь взять содержимое любого csproj файла и регексп

    Reference\n.*Name


    У тебя оно все нормально показывает, а Expresso не пашет. Правильное выражение будет что то типа

    Reference\r{0,}\n{0,}.*Name
    Re[4]: RegEx Tracer
    От: Блудов Павел Россия  
    Дата: 16.05.06 08:24
    Оценка:
    Здравствуйте, adontz, Вы писали:

    БП>>И, кстати, у Group могут быть вложенные Captures.


    A>Что это значит?


    Вот например, есть Regexp, используемый для превращения SomeIdentifier в some_identifier, т.е. из underscored в camel.
    (?:([A-Z]+(?=[A-Z][a-z0-9\.]|\W|$)|[A-Z]?[a-z0-9\.]+)_*)+


    Используется он так
                    Match m = camelRegex.Match(token);
                    if (m.Success)
                    {
                        CaptureCollection captures = m.Groups[1].Captures;
                        
                        // собираем всё замешивая с '_'
                    }


    Так вот, из-за того, что RegEx Tracer не расчитан на древовидные запросы, он показывает только последнее попадание.
    Посмотри, что показывает expresso и что показывает RegEx Tracer.
    ... << RSDN@Home 1.2.0 alpha rev. 642>>
    Re[2]: RegEx Tracer
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 16.05.06 08:26
    Оценка:
    Здравствуйте, HotDog, Вы писали:

    HD>1. попробуй сделать "Copy C# Code" для выражения где есть ". К примеру


    HD>Лучше оборачивать в @"" строки, тогда не надо будет миллион слешей рисовать.


    ОК

    HD>Ну и плюс всякие юникодные префиксы и т.д не забыть.


    Это ты о чём?

    HD>2. Насколько я понял, ты используешь RichTextBoxt для Input поля?


    Да

    HD>Так вот RichTextBoxt приводит переводы строки из "\r\n" к "\n" форме. Поэтому я некоторе время не мог понять, почему regexp, который у тебя нормально отрабатывает, не пашет в коде и Expresso.

    HD>Для примера можешь взять содержимое любого csproj файла и регексп
    HD>
    HD>Reference\n.*Name
    HD>

    HD>У тебя оно все нормально показывает, а Expresso не пашет. Правильное выражение будет что то типа
    HD>
    HD>Reference\r{0,}\n{0,}.*Name
    HD>


    Хммм... Давай я это сделаю настройкой — какие переводы строк в поле input.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[5]: RegEx Tracer
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 16.05.06 11:17
    Оценка: 20 (1)
    Здравствуйте, Блудов Павел, Вы писали:

    БП>Здравствуйте, adontz, Вы писали:

    БП>>>И, кстати, у Group могут быть вложенные Captures.

    Обновил. Смотрим, ругаем дальше.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[6]: RegEx Tracer
    От: Odi$$ey Россия http://malgarr.blogspot.com/
    Дата: 17.05.06 04:15
    Оценка: 39 (1)
    Здравствуйте, adontz, Вы писали:

    A>Обновил. Смотрим, ругаем дальше.


    возьмем regex для поиска IP адресов —

    (((25[0-5])|(2[0-4]\d)|(1\d{2})|(\d{1,2}))\.){3}((25[0-5])|(2[0-4]\d)|(1\d{2})|(\d{1,2}))

    и заголовок письма где есть например:

    Received: from rsdn.rsdn.ru ([195.128.127.200] verified)


    Результат в Expresso:



    А теперь в RegExTracer 3.2:



    если теперь попробовать поиграться галочками типа Explicit group... то плющит уже совершенно конкретно, вплоть до 100% загрузки процессора.
    ... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
    Re[7]: RegEx Tracer
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 17.05.06 08:05
    Оценка:
    Здравствуйте, Odi$$ey, Вы писали:

    fixed. Ругаем дальше
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re: RegEx Tracer
    От: HotDog Швейцария www.denebspace.com
    Дата: 24.05.06 14:51
    Оценка:
    Здравствуйте, adontz, Вы писали:

    Еще один баг. Воспроизводится таким образом:

    1. В поле Input копируешь текст

    FUJI PHOTO FILM CO., LTD.



    2. В поле Regular expression

    (\s{1,}(?:CO)([\s,.]{1,}))



    После этого портится содержимое поля Input
    Re[2]: RegEx Tracer
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 24.05.06 14:59
    Оценка:
    Здравствуйте, HotDog, Вы писали:

    HD>После этого портится содержимое поля Input


    В последней версии?
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[3]: RegEx Tracer
    От: Ramzes_ Россия http://ramzes.ws/
    Дата: 24.05.06 15:07
    Оценка: 39 (1)
    Чуть не забыл.

    Заходим в Options и ничего не выделяя нажимаем Choise или Remove. Не проверяется некорректный индекс.
    Re[4]: RegEx Tracer
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 24.05.06 15:24
    Оценка:
    Здравствуйте, Ramzes_, Вы писали:

    R_>Заходим в Options и ничего не выделяя нажимаем Choise или Remove. Не проверяется некорректный индекс.


    Спасибо
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re: RegEx Tracer
    От: achmed Удмуртия https://www.linkedin.com/in/nail-achmedzhanov-9907188/
    Дата: 25.05.06 13:33
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Понадобилось поотлаживать регулдярные выражения для .Net

    ....

    Было бы замечательно, если бы утилита поддерживала разные типы регулярых выражений.
    Последнее что было нужно: pcre, javascript, visual studio(те которые для поиска и замены по файлам), POSIX и т.д.
    Re: RegEx Tracer
    От: Ka3a4oK  
    Дата: 27.05.06 13:53
    Оценка: 39 (1)
    Когда двигаем сплитеры, метки "Highlighting" "уезжают".
    ... << RSDN@Home 1.1.4 stable rev. 510>>
    Re: RegEx Tracer
    От: distance  
    Дата: 17.07.09 08:54
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Понадобилось поотлаживать регулдярные выражения для .Net

    A>RxToolkit куда-то потерялся, Regulator скачать не удалось (sourceforge.net был в дауне), утилитка Regex Builder
    Автор: VladD2
    Дата: 09.07.05
    так и не вышла из стостояние беты и падала на моих выражениях. Вобщем оставался только один путь


    Подниму, пожалуй старую темку, ибо нравится мне графическое оформление этой тулзы.

    Неправильно отображает такой регэксп:
    enum\s+MSG_Messages(?:\s*|\/\*.*?\*\/|\s*\/\/.*$)*{(?:\s*|\/\*.*?\*\/|\s*\/\/.*$)*(?:(?<msg>MSG_\w+)(?:\s*|\/\*.*?\*\/)*?,(?:\s*|\/\*.*?\*\/|\s*\/\/.*$)*)+(?<msg>MSG_MAX)\s*}\s*;


    Включена опция "Multiline"

    Тестовый текст:
    // test
    enum MSG_Messages /**/
    /**/
    // sss sss
    { //
    /**/
        MSG_MainDlg_UpdateMode,MSG_Other,
    MSG_MainDlg_ScheduledTasks  /* sss */, /**/ // mmme MSG_DDD,
    
        // Scab tash    
        MSG_Error_Require_Administrator_Rights, // jjj
        MSG_Error_Previuos_Instance_Is_Runnung,
        MSG_Error_Require_Windows2000_Or_Later,
    
        // sss
        /* ddd текст */
        MSG_MAX
    };


    Скрин Expresso 3.0


    В трейсере 3.1 — пусто.
    Re[2]: RegEx Tracer
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 17.07.09 16:46
    Оценка:
    Здравствуйте, distance, Вы писали:

    D>В трейсере 3.1 — пусто.


    На сайте вроде бы 3.3 лежит, она же последняя версия.
    http://www.rsdn.ru/File/2053/RegExTracer.rar
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[3]: RegEx Tracer
    От: distance  
    Дата: 20.07.09 11:40
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Здравствуйте, distance, Вы писали:


    D>>В трейсере 3.1 — пусто.


    A>На сайте вроде бы 3.3 лежит, она же последняя версия.

    A>http://www.rsdn.ru/File/2053/RegExTracer.rar

    Спасибо, в этой версии регэксп работает!
    Брал с codeproject, там последняя версия 3.1
     
    Подождите ...
    Wait...
    Пока на собственное сообщение не было ответов, его можно удалить.