Здравствуйте, уважаемые разработчики!
Подскажите пожалуйста каким образом используются регулярные выражения в системе поиск/замена.
Хотя бы пару примеров, а то как то непонятно получается.
Пишу в строке поиска строку "KENWOOD\sJE\s[0-9]", ставлю галочку для чекбокса "РВ" и нажимаю кнопку "Найти" программа пишет, что результаты не найдены. или вот так пробуюрезультат аналогичный.
Но стоит только строку поиска изменить на "KENWOOD JE", убрать галочку для чекбокса "РВ" и нажать кнопку "Найти", программа сразу находит первый подходящий результат
Использование регулярных выражений в системе найти/заменить
Пишу макросы VBA на заказ от 100 руб. обращаться в личку.
Подключение макросов | Подключение макросов 2 | Регулярные выражения | Руководство E-Trade PLI | EdiTTempDir | РРЦ | правильное обновление ПЛИ и СС | данные импортируются как звездочки | контакты тех.поддержки
Подключение макросов | Подключение макросов 2 | Регулярные выражения | Руководство E-Trade PLI | EdiTTempDir | РРЦ | правильное обновление ПЛИ и СС | данные импортируются как звездочки | контакты тех.поддержки
Попробуйте так
Код: Выделить всё
(KENWOOD\sJE\s[0-9]{1,6})С уважением, поддержка ElbuzGroup.
Спасибо сработало. Еще вопрос. В системе автозамены наименования я могу написать в поле найти "(KENWOOD)\s(JK)\s(760)", а в поле заменить "$1 $3 $2" и в результате из такого наименования "KENWOOD JK 760" получится такое "KENWOOD 760 JK" а в системе найти/заменить так сделать у меня не получилось. Не понятно почему, ведь и тут и там одна и та же совокупность действий найти - заменить, а работают получается по разному. Можно ли сделать так, чтобы регулярные выражения в системе "найти/заменить" работали бы так же как в системе автозамены(кнопка замена наименования товара)?
Пишу макросы VBA на заказ от 100 руб. обращаться в личку.
Подключение макросов | Подключение макросов 2 | Регулярные выражения | Руководство E-Trade PLI | EdiTTempDir | РРЦ | правильное обновление ПЛИ и СС | данные импортируются как звездочки | контакты тех.поддержки
Подключение макросов | Подключение макросов 2 | Регулярные выражения | Руководство E-Trade PLI | EdiTTempDir | РРЦ | правильное обновление ПЛИ и СС | данные импортируются как звездочки | контакты тех.поддержки
В системе найти/заменить использован старый алгоритм работы с регулярными выражениями, доработаем этот момент, в новой версии ПЛИ будет работать как вам необходимо.
С уважением, поддержка ElbuzGroup.
До сих пор не работает, либо работает так, что как серпом по яйцам, например вот результат нажатия кнопки "Заменить все"TechAdmin писал(а):В системе найти/заменить использован старый алгоритм работы с регулярными выражениями, доработаем этот момент, в новой версии ПЛИ будет работать как вам необходимо.
Пишу макросы VBA на заказ от 100 руб. обращаться в личку.
Подключение макросов | Подключение макросов 2 | Регулярные выражения | Руководство E-Trade PLI | EdiTTempDir | РРЦ | правильное обновление ПЛИ и СС | данные импортируются как звездочки | контакты тех.поддержки
Подключение макросов | Подключение макросов 2 | Регулярные выражения | Руководство E-Trade PLI | EdiTTempDir | РРЦ | правильное обновление ПЛИ и СС | данные импортируются как звездочки | контакты тех.поддержки
По вашему алгоритму как должно было замениться наименование при таких настройках?
С уважением, поддержка ElbuzGroup.
Алгоритм тут может быть только один. заменяться должна часть строки, которая выделяется регулярным выражением, и заменяться эта выделенная часть строки должна на то, что записано в поле "Заменить"TechAdmin писал(а):По вашему алгоритму как должно было замениться наименование при таких настройках?
В общем оба поля должны работать как в системе замены наименования.
Совсем не понятно для чего нужна галочка "РВ" напротив поля "Заменить", огромная просьба объяснить ее предназначение.
Пишу макросы VBA на заказ от 100 руб. обращаться в личку.
Подключение макросов | Подключение макросов 2 | Регулярные выражения | Руководство E-Trade PLI | EdiTTempDir | РРЦ | правильное обновление ПЛИ и СС | данные импортируются как звездочки | контакты тех.поддержки
Подключение макросов | Подключение макросов 2 | Регулярные выражения | Руководство E-Trade PLI | EdiTTempDir | РРЦ | правильное обновление ПЛИ и СС | данные импортируются как звездочки | контакты тех.поддержки
Если не стоит флажок "РВ" в поле "Заменить", тогда будет заменяться текст найденный регулярным выражением из поля "Найти", текстом из поля "Заменить".
Если стоит флажок "РВ" в поле "Заменить", тогда можно применять конструкции вида "$1 $3 $2".
При активации двух флажков "РВ" полностью используется поиск/замена на основании рег. выражений.
Фактически используется данная функция VBScript:
Если стоит флажок "РВ" в поле "Заменить", тогда можно применять конструкции вида "$1 $3 $2".
При активации двух флажков "РВ" полностью используется поиск/замена на основании рег. выражений.
Фактически используется данная функция VBScript:
Код: Выделить всё
Замена соответствующих шаблону вхождений в строке-оригинале на указанную подстроку. Возвращает (возможно) изменённую строку.
Regexp.Replace(<strSource>,<strReplace>)
Параметры:
<strSource> - строка-оригинал (где заменять).
<strReplace> - подстрока для замены (на что заменять).
С уважением, поддержка ElbuzGroup.
Огромное спасибо за разъяснение! Хотелось бы узнать когда оно так заработает?TechAdmin писал(а):Если не стоит флажок "РВ" в поле "Заменить", тогда будет заменяться текст найденный регулярным выражением из поля "Найти", текстом из поля "Заменить".
Если стоит флажок "РВ" в поле "Заменить", тогда можно применять конструкции вида "$1 $3 $2".
Спрашиваю в связи с тем, что немного выше я написал о том, что работает непонятно как.
На картинке видно и то, что я указал в поле "Найти", и то, что я указал в поле "Заменить", и результат в виде части СТУС, где у найденных товаров в поле "Наменование №1" заменилось вообще всё, на то, что было в поле "Заменить"
И вообще у Вас функция не совсем понятная какая то, по логике 3 параметра должно быть.
1. Где заменять.
2. Что искать. (сюда попадает текст из поля "найти")
3. Чем заменить. (сюда попадает текст из поля "заменить")
а у Вас 2 получается:
<strSource> - строка-оригинал (где заменять).
<strReplace> - подстрока для замены (на что заменять).
Пишу макросы VBA на заказ от 100 руб. обращаться в личку.
Подключение макросов | Подключение макросов 2 | Регулярные выражения | Руководство E-Trade PLI | EdiTTempDir | РРЦ | правильное обновление ПЛИ и СС | данные импортируются как звездочки | контакты тех.поддержки
Подключение макросов | Подключение макросов 2 | Регулярные выражения | Руководство E-Trade PLI | EdiTTempDir | РРЦ | правильное обновление ПЛИ и СС | данные импортируются как звездочки | контакты тех.поддержки
С установкой обоих галочек работает. Огромное спасибо.
Пишу макросы VBA на заказ от 100 руб. обращаться в личку.
Подключение макросов | Подключение макросов 2 | Регулярные выражения | Руководство E-Trade PLI | EdiTTempDir | РРЦ | правильное обновление ПЛИ и СС | данные импортируются как звездочки | контакты тех.поддержки
Подключение макросов | Подключение макросов 2 | Регулярные выражения | Руководство E-Trade PLI | EdiTTempDir | РРЦ | правильное обновление ПЛИ и СС | данные импортируются как звездочки | контакты тех.поддержки
