Профиль должен быть заполнен на русском языке кириллицей. Заполнение профиля заведомо ложными или некорректными данными - причина возможного отказа в регистрации на форуме.

Регулярные выражения в текстах замены, фильтрах и прочее

Обсуждение и решение проблем в работе с Eplan.

Модератор: специалисты по Eplan


Dotarev
знаток Eplan
знаток Eplan
Сообщения: 115
Зарегистрирован: 12 июн 2014, 05:17
Ф.И.О.: Мишкин Иван
Благодарил (а): 11 раз
Поблагодарили: 20 раз

Re: Регулярные выражения в текстах замены, фильтрах и прочее

Сообщение Dotarev » 19 ноя 2015, 23:26

Ещё можно использовать в фильтрах.
Но выше, каюсь, был не прав. Eplan "понимает" не все символы регулярных выражений. Точно принимаются символы "*", "?", "+", "^", выражения вида "[]" (например, любая цифра - "[0-9]"). Обратный слеш (и все выражения с ним), вертикальная черта и фигурные скобки не воспринимаются как спец. символы регулярного выражения. Пробовал как с русским, так и с английским интерфейсом диалоговых окон.


Dotarev
знаток Eplan
знаток Eplan
Сообщения: 115
Зарегистрирован: 12 июн 2014, 05:17
Ф.И.О.: Мишкин Иван
Благодарил (а): 11 раз
Поблагодарили: 20 раз

Re: Регулярные выражения в текстах замены, фильтрах и прочее

Сообщение Dotarev » 19 ноя 2015, 23:32

В данном случае, первое что приходит на ум - в шифр документа внести свойство блока, а в формате свойства блока использовать вывод вида документа с заменой текста.

Аватара пользователя

legionercheg
знаток Eplan
знаток Eplan
Сообщения: 711
Зарегистрирован: 18 ноя 2013, 07:32
Ф.И.О.: Сергей
Благодарил (а): 21 раз
Поблагодарили: 28 раз

Re: Регулярные выражения в текстах замены, фильтрах и прочее

Сообщение legionercheg » 20 ноя 2015, 08:15

Сейчас шифр и формируется из свойства блока, но точка(или пробел) между номером проекта и видом документа идет как разделитель.Выходит разделитель надо убирать,а таблицу замены делать для всех Видов документов,а их штук 30. Щас пока запускаю Ё, можно ли там стока свойств занести в таблицу замены?:)

Сам же и отвечу-свойств получилось 42,все "влезло",способ работает :ext_book:
--------------------------------------------
Eplan Electric P8 - Professional
Версия: 2.2 HF1
Номер сборки: 6360


Dotarev
знаток Eplan
знаток Eplan
Сообщения: 115
Зарегистрирован: 12 июн 2014, 05:17
Ф.И.О.: Мишкин Иван
Благодарил (а): 11 раз
Поблагодарили: 20 раз

Re: Регулярные выражения в текстах замены, фильтрах и прочее

Сообщение Dotarev » 20 ноя 2015, 08:43

Как вариант:
1. ФорматСвойстваБлока[10] -- только <1520> Вид документа, замена Э3, Э4... на текст "Delme"
2. ФорматСвойстваБлока[ШифрДокумента] -- вместо <1520> вносим СвойствоБлока[10] + СкрытьСвойствоЕсли СвойствоИмеетСледующееЗначение: "Delme".
Тогда в тексте замены потребуется перечислить только варианты текста, которые требуется подавить. Вчера пробовал - вроде такой финт ушами работает.

Аватара пользователя

legionercheg
знаток Eplan
знаток Eplan
Сообщения: 711
Зарегистрирован: 18 ноя 2013, 07:32
Ф.И.О.: Сергей
Благодарил (а): 21 раз
Поблагодарили: 28 раз

Re: Регулярные выражения в текстах замены, фильтрах и прочее

Сообщение legionercheg » 20 ноя 2015, 09:45

Свойство блока в свойстве блока :) Хитро,буду иметь ввиду.Хотя как по мне через чур запутано.Вариант с таблицей замены мне больше нравится.И проще,и если вдруг где какой новый документ добавляется-редактировать или новый формат задавать проще.
Но все равно спасибо,даже не думал в эту сторону :)
--------------------------------------------
Eplan Electric P8 - Professional
Версия: 2.2 HF1
Номер сборки: 6360

Аватара пользователя

Dyma
знаток Eplan
знаток Eplan
Сообщения: 514
Зарегистрирован: 15 май 2012, 11:36
Ф.И.О.: Чистякова Оксана
Благодарил (а): 3 раза
Поблагодарили: 8 раз

Re: Регулярные выражения в текстах замены, фильтрах и прочее

Сообщение Dyma » 20 ноя 2015, 13:18

Добрый день, коллеги!
Если в тексте замены поставить Оператором "Регулярное выражение", то активна галка в столбце "Продолжить". Кто знает назначение этого столбца? В хелпе информации не нашла.
Ранее была информация, что Е отрабатывает цепочку до первого совпадения в строке и отваливается. Может, используя галку происходит дальнейший поиск и замена?
При использовании арифметических знаков галка в столбце неактивна.
______________________________________________________
Я слышу и забываю. Я вижу и запоминаю. Я делаю и понимаю.


Dotarev
знаток Eplan
знаток Eplan
Сообщения: 115
Зарегистрирован: 12 июн 2014, 05:17
Ф.И.О.: Мишкин Иван
Благодарил (а): 11 раз
Поблагодарили: 20 раз

Re: Регулярные выражения в текстах замены, фильтрах и прочее

Сообщение Dotarev » 21 ноя 2015, 17:55

Действительно, в Help_Ru v2.4 часть текста помощи убрали. Привожу отрывок из Help_Ru_v2.5:
Продолжить:
Установите этот флажок, если хотите, чтобы несколько регулярных выражений были поочередно выполнены. Таким образом, например, можно заменить несколько пробелов подряд.
Если регулярное выражение должно выполняться только единожды, снимите этот флажок (настройка по умолчанию).
Пример:
Свойство Технические параметры (Ид. 20027) выбрано в качестве элемента формата свойства блока. В этом свойстве содержатся, например, следующие значения: напряжение 24 В, пост. ток 12 В или мощность 2,5 Вт. Теперь необходимо вырезать из этих значений только цифры и отобразить их.
Сначала для свойства Технические параметры поля Текст замены в диалоговом окне Формат: Свойство блока устанавливается значение "Использовать таблицу 1".
Чтобы заменить текст в свойствах блока, задайте затем в свойствах проекта для свойства Свойство блока: Текст замены [1] следующую таблицу:

Оператор Исходный текст Текст вывода Продолжить
Регулярное выражение ^[^0-9]* x
Регулярное выражение [^0-9]*$

Далее происходит замена значений свойства Технические параметры на тексты вывода 24, 12 или 2,5.

Аватара пользователя

legionercheg
знаток Eplan
знаток Eplan
Сообщения: 711
Зарегистрирован: 18 ноя 2013, 07:32
Ф.И.О.: Сергей
Благодарил (а): 21 раз
Поблагодарили: 28 раз

Регулярные выражения в текстах замены, фильтрах и прочее

Сообщение legionercheg » 03 авг 2016, 14:25

Иногда бывает так что имя какого нить устройства или кабеля заковыристо написано (пример: AK1-IPR2-A1-1), и при копировании если Ё указать что надо нумеровать устройства, иногда можно получить ОУ такого вида: ?AK1-IPR2-A1-2.
Это ОУ у меня выводится в отчет и хочу в таблицах текста замены пасти это дело. Т.е. если свойство(не важно какое,свойство блока или ОУ) начинается с "?" то текст замены какой нить типа "ошибка!неправильное имя!".
Но все никак не могу понять как объяснить в регулярных выражениях это все. ОУ может быть каким угодно, кол-во символов в нем тоже, но если первый символ знак вопроса "?", заменять это свойство на то что указано в таблице замены...
:ges_help:

Так оказывается в "Оператор" надо было = заменить на Регулярное выражение. Получилось заменить в тексте "?12345" на "ошибка!неправильное имя!12345",т.е. заменился только символ знака вопроса, а как сделать чтобы все значение "?12345" стало "ошибка!неправильное имя!" ?
--------------------------------------------
Eplan Electric P8 - Professional
Версия: 2.2 HF1
Номер сборки: 6360


Lekdro
здесь недавно
здесь недавно
Сообщения: 13
Зарегистрирован: 24 фев 2014, 14:49
Ф.И.О.: Алексей
Благодарил (а): 1 раз

Регулярные выражения в текстах замены, фильтрах и прочее

Сообщение Lekdro » 07 окт 2016, 15:04

А вот еще пример использования регулярных выражений
http://asutpforum.ru/viewtopic.php?f=78&p=71908#p71908


Вернуться в «Eplan Electric P8»



Кто сейчас на конференции

Сейчас этот форум просматривают: Bing [Bot] и 0 гостей