Конструктор регулярных выражений

Nick

Client
Регистрация
22.07.2014
Сообщения
1 961
Благодарностей
796
Баллы
113
Я испытываю боль от работы с этим компонентом. Оно здорово облегчает генерацию выражений и большое спасибо разработчикам за его существование, но оно оставляет желать лучшего.

  1. Само окно конструктора какое-то недоделанное. Нет кнопки «Максимизировать» (на всё окно). Кнопки не поддерживают горячие клавиши.
  2. При вызове из закладки «Запись и отладка» это маленькая кнопочка в виде книжки. В режиме «Расширенный редактор» кнопочка скрывается где-то под точечками, зато появляется в полоске больших кнопок. Поначалу, когда ещё не привык к этому, думал: «блин! но тут была же кнопка!! куда она делась???» Сделайте как-то единообразно, пожалуйста.
  3. Между вызовами состояние конструктора не сохраняется. Размеры окна между вызовами тоже не сохраняются. Если пользователь хочет, чтобы левая колонка «Текст для обработки» была шире, чем «Результат обработки», я обречён на то, чтобы каждый раз сдвигать границу между ними. Жутко бесит
  4. В поле «Текст для обработки» нет режима переноса строки, приходится проставлять переносы вручную. Вот бы кнопочку соответствующую над этим полем... а заодно и кнопочку поиска, а то не все знают, что он поддерживается. Может, там и другие фичи есть? :-) Там явно какой-то мощный редактор.
  5. Ненужная кнопка «Тест», которую всё время приходится кликать. Результат можно обновлять уже по событию изменения значения полей, влияющих на регулярное выражение. Понимаю, что это не всем удобно, но думаю, многим было бы удобно именно так!
  6. Не знаю, что у вас там за контролы, но почему надпись «Помощник по созданию регулярных выражений» подчёркнута?
  7. Непонятно, как закрывать окно с помощью клавиатуры. На Esc не реагирует, на Ctrl+F4 не реагирует.
  8. Рядом с кнопкой «Закрыть» можно сделать кнопку «Скопировать выражение и закрыть». Я почти всегда делаю именно эти две операции.
  9. Конструктор очень слабо интегрирован с другими компонентами. Это неправильно, что при необходимости разбора текстового блока или исправлении существующего блока Regex пользователю приходится открывать конструктор из меню, предварительно скопировав какой-то текст. На эту тему три предложения:
    А. В блоке Regex в момент отладки должна быть кнопка «Отладить в конструкторе», которая вызывала бы конструктор и сразу передавала туда текущее значение, которое надо обрабатывать, и выражение, и заполняла бы поля. Чтобы можно было сразу исправлять, а не возиться с кусочками текста.
    Б. В панели «Переменные» около колонки «Значения» должна быть кнопка «Отправить в конструктор», которая тоже передаёт значение в Конструктор.
    В. У окна Конструктора внизу тоже должна отображаться панель переменных. Если уж пользователю пришлось вручную запустить конструктор, дайте возможность оттуда перетащить текст.
С уважением!
 

alekwuy

Client
Регистрация
06.04.2013
Сообщения
1 631
Благодарностей
461
Баллы
83
  • Ненужная кнопка «Тест», которую всё время приходится кликать. Результат можно обновлять уже по событию изменения значения полей, влияющих на регулярное выражение. Понимаю, что это не всем удобно, но думаю, многим было бы удобно именно так!
  • Непонятно, как закрывать окно с помощью клавиатуры. На Esc не реагирует, на Ctrl+F4 не реагирует.
Да реально напряг мышкой кликать
Сделайте что б шаблоны сами писались!!11
Хочу нейрокомпьютерный интерфейс
 
  • Спасибо
Реакции: aleksei123 и MicroOriki

darkdiver

Administrator
Команда форума
Регистрация
13.01.2009
Сообщения
2 284
Благодарностей
2 728
Баллы
113
Само окно конструктора какое-то недоделанное. Нет кнопки «Максимизировать» (на всё окно). Кнопки не поддерживают горячие клавиши.
Максимизировать все окно, это double click по заголовку, как во в любом Windows окне.
А какие горячие клавиши нужны? Последовательность табов исправил, чтобы табами ходить между кошками нормально можно было
При вызове из закладки «Запись и отладка» это маленькая кнопочка в виде книжки. В режиме «Расширенный редактор» кнопочка скрывается где-то под точечками, зато появляется в полоске больших кнопок. Поначалу, когда ещё не привык к этому, думал: «блин! но тут была же кнопка!! куда она делась???» Сделайте как-то единообразно, пожалуйста.
на сколько я понимаю, так себя ведет RibbonControl, он покупной, а тратить на него ещё несколько тысяч долларов на его исходники, нет настолько острой нужды. Конструктор регулярных выражений вызывается по кнопке F3 из любой вкладки, можно не искать кнопку, чтобы тыкнуть мышкой, на многие другие кнопки тоже есть горячие клавиши, наведите курсор, и увидите какая горячая клавиша привязана к кнопке.
upload_2014-8-18_11-47-55.png

Между вызовами состояние конструктора не сохраняется. Размеры окна между вызовами тоже не сохраняются. Если пользователь хочет, чтобы левая колонка «Текст для обработки» была шире, чем «Результат обработки», я обречён на то, чтобы каждый раз сдвигать границу между ними. Жутко бесит
резонно, как сможем исправим.
В поле «Текст для обработки» нет режима переноса строки, приходится проставлять переносы вручную. Вот бы кнопочку соответствующую над этим полем... а заодно и кнопочку поиска, а то не все знают, что он поддерживается. Может, там и другие фичи есть? :-) Там явно какой-то мощный редактор.
нет там только Ctrl+F поддерживается, т.к. другое не нужно, над переносом строки подумаем.
Ненужная кнопка «Тест», которую всё время приходится кликать. Результат можно обновлять уже по событию изменения значения полей, влияющих на регулярное выражение. Понимаю, что это не всем удобно, но думаю, многим было бы удобно именно так!
нельзя так делать, т.к. мы можем в какой-то момент иметь некорректное регулярное выражение, которое будет работать очень долго, что убьет проц и память.
Не знаю, что у вас там за контролы, но почему надпись «Помощник по созданию регулярных выражений» подчёркнута?
Нашему дизайнеру нравится и мне тоже, это же заголовок для группы контролов
upload_2014-8-18_11-57-10.png
Непонятно, как закрывать окно с помощью клавиатуры. На Esc не реагирует, на Ctrl+F4 не реагирует.
как и любое окно Windows Alt+F4
Рядом с кнопкой «Закрыть» можно сделать кнопку «Скопировать выражение и закрыть». Я почти всегда делаю именно эти две операции.
можно добавил в TODO
Конструктор очень слабо интегрирован с другими компонентами. Это неправильно, что при необходимости разбора текстового блока или исправлении существующего блока Regex пользователю приходится открывать конструктор из меню, предварительно скопировав какой-то текст. На эту тему три предложения:
А. В блоке Regex в момент отладки должна быть кнопка «Отладить в конструкторе», которая вызывала бы конструктор и сразу передавала туда текущее значение, которое надо обрабатывать, и выражение, и заполняла бы поля. Чтобы можно было сразу исправлять, а не возиться с кусочками текста.
Б. В панели «Переменные» около колонки «Значения» должна быть кнопка «Отправить в конструктор», которая тоже передаёт значение в Конструктор.
В. У окна Конструктора внизу тоже должна отображаться панель переменных. Если уж пользователю пришлось вручную запустить конструктор, дайте возможность оттуда перетащить текст.
тоже подумаем как реализовать.
 
  • Спасибо
Реакции: Juniorcpa, izubr и Nick

CSS

Client
Регистрация
22.05.2010
Сообщения
1 327
Благодарностей
663
Баллы
113
Вкладок нехватает в конструкторе, и возможность его сворачивать. Вкладки бы избавили от необходимости кучу окон открывать.
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 705
Баллы
113
Сворачивать можно, а какие вкладки?
 

CSS

Client
Регистрация
22.05.2010
Сообщения
1 327
Благодарностей
663
Баллы
113
Сворачивать можно, а какие вкладки?
Как в браузере. Сейчас когда к примеру 3 регулярки, и у каждой свой текст на котором тестируем - у нас три окна конструктора, в каждом окне свои данные - текстовка, регулярка, а могло бы быть 1 окно и 3 вкладки.
 
  • Спасибо
Реакции: strannic

Nick

Client
Регистрация
22.07.2014
Сообщения
1 961
Благодарностей
796
Баллы
113
Максимизировать все окно, это double click по заголовку, как во в любом Windows окне.
А какие горячие клавиши нужны?
darkdiver, спасибо за внимательный разбор! Ну, про фичу с даблкликом по заголовку мало кто знает. Раз это окно полноценное, то в нём очень круто было бы иметь снизу панельку с переменными, а в верхнем правом углу всё-таки все стандартные кнопки.
Вообще, оно выглядит как модальное, поэтому я его по первости всё время закрывал-открывал, пока случайно снаружи не кликнул. Именно для того, чтобы оно таким не воспринималось, ему надо нормальные кнопки Minimize и Maximize добавить, имхо.
Насчёт горячих клавиш, для кнопки тест какую-нибудь типа Ctrl+e, для кнопки Закрыть уж не надо, раз оно по Ctrl+F4 закрывается.

Ни фига себе, его можно в нескольких экземплярах открывать?! Мощь... Я бы над левым этим текстовым полем «Текст для обработки» сделал закладочки такие, чтобы можно было над разными блоками одно выражение гонять.

на сколько я понимаю, так себя ведет RibbonControl, он покупной, а тратить на него ещё несколько тысяч долларов на его исходники, нет настолько острой нужды. Конструктор регулярных выражений вызывается по кнопке F3 из любой вкладки, можно не искать кнопку, чтобы тыкнуть мышкой, на многие другие кнопки тоже есть горячие клавиши, наведите курсор, и увидите какая горячая клавиша привязана к кнопке.
Посмотреть вложение 5955
Да нет, просто кнопку «Тестер рег. выражений» нужно добавить в риббон не только для режима «Расширенный редактор», но и для режима «Запись и отладка», и всё. Он там очень нужен.

Кстати, вот rostonix круто настроил у себя Quick Access Tollbar (все кнопки вынес вверх). Новые пользователи не подозревают о такой возможности, а я бы сделал такую настройку по дефолту:




В ответ на «Ненужная кнопка «Тест», которую всё время приходится кликать. Результат можно обновлять уже по событию изменения значения полей, влияющих на регулярное выражение. Понимаю, что это не всем удобно, но думаю, многим было бы удобно именно так!»
нельзя так делать, т.к. мы можем в какой-то момент иметь некорректное регулярное выражение, которое будет работать очень долго, что убьет проц и память.
Ну, вы же как-то обрабатываете эту ситуацию, когда человек нажимает кнопку вручную? То же самое можно делать и при покидании текстовых полей.

Нашему дизайнеру нравится и мне тоже, это же заголовок для группы контролов
Ну не знаю, а почему бы не использовать обычный GroupBox? Вон на примере справа они даже один в другом. Выглядит аккуратно и привычно.


Ещё раз спасибо за реакцию и доработки!
 

zennoX

Client
Регистрация
05.04.2014
Сообщения
482
Благодарностей
131
Баллы
43
Кстати, вот rostonix круто настроил у себя Quick Access Tollbar (все кнопки вынес вверх). Новые пользователи не подозревают о такой возможности, а я бы сделал такую настройку по дефолту
Как так сделать?
 

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 705
Баллы
113
Правый клик по любой большой иконке - Add to Quick toolbar
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 362
Благодарностей
8 648
Баллы
113
Правый клик по любой большой иконке - Add to Quick toolbar
вау, сколько хитрых фокусов узнаем после 2 лет использования ПМ.. :-)
это ж можно полностью убрать полосу больших кнопок, освободив немалое пространство для проекта?

упс, куик тулбар не раздвигается разве в ширину?
большинство кнопок скрыто будет, как бы.. печалька..
 
Последнее редактирование:

rostonix

Известная личность
Регистрация
23.12.2011
Сообщения
29 067
Благодарностей
5 705
Баллы
113
вау, сколько хитрых фокусов узнаем после 2 лет использования ПМ.. :-)
это ж можно полностью убрать полосу больших кнопок, освободив немалое пространство для проекта?
да))
 

sof

Client
Регистрация
15.04.2013
Сообщения
831
Благодарностей
184
Баллы
43
вау, сколько хитрых фокусов узнаем после 2 лет использования ПМ.. :-)
это ж можно полностью убрать полосу больших кнопок, освободив немалое пространство для проекта?

упс, куик тулбар не раздвигается разве в ширину?
большинство кнопок скрыто будет, как бы.. печалька..
Ух ты класс....
 

Nick

Client
Регистрация
22.07.2014
Сообщения
1 961
Благодарностей
796
Баллы
113
Кстати, после обновления эта фигня тоже слетает, хорошо бы эту настройку как-то сохранять.
А то она слетела, а я уже весь этот тулбар вдоль и поперёк прокликал — там и не смог найти опцию «Отображать вверху большие кнопки». Пришлось эту тему искать :(
 

ZennoScript

Moderator
Регистрация
04.03.2011
Сообщения
4 450
Благодарностей
1 880
Баллы
113
Ну, вы же как-то обрабатываете эту ситуацию, когда человек нажимает кнопку вручную? То же самое можно делать и при покидании текстовых полей.
Часто бывает такое, что создаешь регулярку, где то что то вставил не так и всё, конструктор умер. Перезагружаешь его, заполняешь заново текстом и заново лепишь регулярку. Так вот, если конструктор будет сам реагировать на действия в окнах, это будет аут. Им работать будет невозможно. Зачем получать результаты после каждого чиха? Нужно сразу правильно настроить регулярку, проверить пару раз и всё.
 

Nick

Client
Регистрация
22.07.2014
Сообщения
1 961
Благодарностей
796
Баллы
113
Я понимаю ваши опасения, хотя у меня конструктор ни разу не падал. Я думаю, вы смотрите на эту ситуацию как профи, у которого каждое движение в конструкторе - по делу и даёт предсказуемый результат. Когда я был новичком, я тыкался-мыкался там, нажимая эту дурацкую кнопку раз по 5-10, пока получал результат. Для новичка эта фича была бы полезной, я уверен. Раз это дело вкуса, то, может быть, стóит сделать её отключаемой в настройках.
 
Регистрация
12.07.2014
Сообщения
916
Благодарностей
371
Баллы
63
В конструкторе ^ и $ не работают?
В сторонних тестерах регулярок приходится тестировать.
В Зенке то вроде все работает.
 

orka13

Client
Регистрация
07.05.2015
Сообщения
2 159
Благодарностей
2 159
Баллы
113
Работает, но не как начало\конец строки, а как начало\конец всего текста, который вы вставили в конструктор.
 
Регистрация
12.07.2014
Сообщения
916
Благодарностей
371
Баллы
63

orka13

Client
Регистрация
07.05.2015
Сообщения
2 159
Благодарностей
2 159
Баллы
113
Ну скажем так: это один из вариантов восприятия текста, который кодеры зенолаба посчитали более истинным. Но думаю там мешало бы чебокса на подобии "считать перенос строки в тексте как окончание одной строки и начало другой". Ну типа как в зеновском C#:
RegularExpressions.RegexOptions.Multiline \ RegularExpressions.RegexOptions.Singleline
 
Последнее редактирование:
  • Спасибо
Реакции: Сибиряк

Bablozavr

Client
Регистрация
26.01.2018
Сообщения
310
Благодарностей
163
Баллы
43
В окне блока "Тестер регулярных выражений" было бы не плохо добавить кнопку, которая добавит текущий html код страницы (или возможность выбора переменной, из которой взять текст), для применения к нему регулярок.
Если такая возможность есть, буду признателен за подсказку :-)
 
Последнее редактирование:

zortexx

Client
Регистрация
19.09.2011
Сообщения
2 520
Благодарностей
1 221
Баллы
113
В конструкторе ^ и $ не работают?
В сторонних тестерах регулярок приходится тестировать.
В Зенке то вроде все работает.
Зеннопостер использует стандарт Microsoft.
https://docs.microsoft.com/en-us/dotnet/standard/base-types/regular-expression-language-quick-reference

Включайте многострочный режим и будет вам счастье: (?m) перед регулярным выражением.
 
Последнее редактирование:
  • Спасибо
Реакции: orka13 и Сибиряк

todayer

Client
Регистрация
07.08.2013
Сообщения
938
Благодарностей
390
Баллы
63
Подскажите, вроде где-то можно было скачать отдельно конструктор регулярок как в зеннопостере.
 
Регистрация
12.07.2014
Сообщения
916
Благодарностей
371
Баллы
63
Подскажите, вроде где-то можно было скачать отдельно конструктор регулярок как в зеннопостере.
Ээээ а в ПС искали? Там точно программы были ранее, да и сервисы есть.
 

orka13

Client
Регистрация
07.05.2015
Сообщения
2 159
Благодарностей
2 159
Баллы
113
  • Спасибо
Реакции: Sergodjan и todayer

todayer

Client
Регистрация
07.08.2013
Сообщения
938
Благодарностей
390
Баллы
63

todayer

Client
Регистрация
07.08.2013
Сообщения
938
Благодарностей
390
Баллы
63
Регистрация
12.07.2014
Сообщения
916
Благодарностей
371
Баллы
63
Сервис по созданию регулярок вдруг понадобится кому ссылка и видео
Но я давно какой то софтиной пользовался. Хз уже какой.. вроде в свободном доступе была.
 
  • Спасибо
Реакции: todayer

todayer

Client
Регистрация
07.08.2013
Сообщения
938
Благодарностей
390
Баллы
63

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