Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Recommended Posts

42 минуты назад, Reanimaster сказал:

Добрый день. Поддерживается ли модификатор gms в regexp?
 

да поддерживаются.

Надіслати
Поділитися на інших сайтах

День добрый!

Не могу разобраться в Редакторе товаров с действием *Статус товара*.

Нажал *Выполнить действие* - выбранные товары получили статус *Выкл*. 

А как их включить без запуска проекта? Или **Статус товара* в Редакторе только отключает товар? Изменить на Включено не может? Тогда название действия нужно изменить на *Отключить товар*... Чтобы не вводить в заблуждение

Змінено користувачем partshez
Надіслати
Поділитися на інших сайтах


4 минуты назад, partshez сказал:

День добрый!

Не могу разобраться в Редакторе товаров с действием *Статус товара*.

Нажал *Выполнить действие* - выбранные товары получили статус *Выкл*. 

А как их включить без запуска проекта? Или **Статус товара* в Редакторе только отключает товар? Изменить на Включено не может? Тогда название действия нужно изменить на *Отключить товар*... Чтобы не вводить в заблуждение

что то я не понимаю. Есть возможность как включить так и выключить.
 

Спойлер

XkqujWj.png

 

Надіслати
Поділитися на інших сайтах

12 минут назад, Rassol2 сказал:

что то я не понимаю. Есть возможность как включить так и выключить.
 

  Показать контент

XkqujWj.png

 

Посмотрел. На моем тестовом сайте есть переключатель Вкл-Выкл. А на данном сайте он не появляется https://prnt.sc/su7cgt

Что нужно сделать?

Надіслати
Поділитися на інших сайтах


2 минуты назад, partshez сказал:

Посмотрел. На моем тестовом сайте есть переключатель Вкл-Выкл. А на данном сайте он не появляется https://prnt.sc/su7cgt

Что нужно сделать?

я не знаю. причину почему он не появляется на данном сайте.
А для других действий появляются ?

Надіслати
Поділитися на інших сайтах

5 минут назад, partshez сказал:

Посмотрел. На моем тестовом сайте есть переключатель Вкл-Выкл. А на данном сайте он не появляется https://prnt.sc/su7cgt

Что нужно сделать?

При выборе любого действия не появляются доп окна для выбора вариантов 8-)    https://prnt.sc/su7gp3

Попробовать переустановить?

Змінено користувачем partshez
Надіслати
Поділитися на інших сайтах


1 минуту назад, partshez сказал:

При выборе любого действия не появляются доп окна для выбора вариантов 8-)    https://prnt.sc/su7gp3

Попробовать переустановить?

все варианты зашиты в js страницы редактора товаров. Я не думаю что переустановка поможет.
Попробуйте почистить кеш на сайте.

Если нет скинете данные от админки и фтп я посмотрю.

Надіслати
Поділитися на інших сайтах

1 час назад, Rassol2 сказал:

да поддерживаются.

const regexp = /(?<=(^[^;\n].+?---)(?:.+?\n));/gms;
const replacement = '$1'; - RegExp - работает. 

{reg[#(?<=(^[^;\n].+?---)(?:.+?\n));#gms]}|$1 - не работает

Надіслати
Поділитися на інших сайтах


8 минут назад, Reanimaster сказал:

const regexp = /(?<=(^[^;\n].+?---)(?:.+?\n));/gms;
const replacement = '$1'; - RegExp - работает. 

{reg[#(?<=(^[^;\n].+?---)(?:.+?\n));#gms]}|$1 - не работает

мне не ясен ваш пример.
g - глобальный поиск.
m - много строчный поиск
s - считать весь текст одной строкой.

не совсем понимаю что должно произойти когда одновременно используются два модификатора m и s

Как работает. поиск замена в SimplePars с регулярными выражениями. Это по сути стандартная функция php
preg_replace(pattern, replacement, subject)

Вы задаете pattern и через вертикальный слеш replacement а в subject попадает содержимое границы.
И все это подчиняется стандартной функции пхп - https://www.php.net/manual/ru/function.preg-replace.php

 

Надіслати
Поділитися на інших сайтах

9 минут назад, Rassol2 сказал:

мне не ясен ваш пример.
g - глобальный поиск.
m - много строчный поиск
s - считать весь текст одной строкой.

не совсем понимаю что должно произойти когда одновременно используются два модификатора m и s

Как работает. поиск замена в SimplePars с регулярными выражениями. Это по сути стандартная функция php
preg_replace(pattern, replacement, subject)

Вы задаете pattern и через вертикальный слеш replacement а в subject попадает содержимое границы.
И все это подчиняется стандартной функции пхп - https://www.php.net/manual/ru/function.preg-replace.php

 

Было
Спойлер

Общие характеристики---Операционная система--iOS 12|
;Материал корпуса--Алюминий|
;Вес--631 гр|
;Размеры--280,6x 214,9x 5,9 мм|
Конструкция---QWERTY-клавиатура--опционально|
Экран---Тип экрана--Liquid Retina|
;Экран--12,9"|
;Разрешение экрана--2732×2048|
;Автоматический поворот экрана--есть|
;Число пикселей на дюйм (PPI)--264|
Мультимедийные возможности---Запись видеороликов--есть|
;Макс. разрешение видео--4К|
;Макс. частота кадров видео--60 кадров/с|
;Фронтальная камера--7 Мп|
;Фотокамера--12 Мп|
;Аудио--AAC (от 8 до 320 кбит/с), защищённый AAC (для файлов из iTunes Store), HE‑AAC, MP3 (от 8 до 320 кбит/с), MP3 VBR, Dolby Digital (AC‑3), Dolby Digital Plus (E‑AC‑3), Audible (форматы 2, 3, 4, Audible Enhanced Audio, AAX и AAX+), Apple Lossless, AIFF и WAV|
Память и процессор---Процессор--A12X Bionic с 64‑битной архитектурой|
;Поддержка карт памяти--нет|
;Объем встроенной памяти--256 ГБ|
Связь---Интерфейсы--Wi-Fi IEEE 802.11ac, Bluetooth 5.0|
Питание---Тип аккумулятора--Li-polymer|
;Емкость аккумулятора--36,71 Вт∙ч|
;Время работы--До 10 часов работы в интернете по сети Wi‑Fi, просмотра видео или прослушивания музыки|
Другие функции---Датчики--Face ID, Трёхосевой гироскоп, Акселерометр, Барометр, Датчик внешней освещённости|
Дополнительная информация---Комплектация--iPad Pro, Кабель USB‑C для зарядки (1 м), Адаптер питания USB‑C мощностью 18 Вт|

Стало
Спойлер

Общие характеристики---Операционная система--iOS 12|

Общие характеристики---Материал корпуса--Алюминий|

Общие характеристики---Вес--631 гр|

Общие характеристики---Размеры--280,6x 214,9x 5,9 мм|

Конструкция---QWERTY-клавиатура--опционально|

Экран---Тип экрана--Liquid Retina| Экран---Экран--12,9"|

Экран---Разрешение экрана--2732×2048|

Экран---Автоматический поворот экрана--есть|

Экран---Число пикселей на дюйм (PPI)--264|

Мультимедийные возможности---Запись видеороликов--есть|

Мультимедийные возможности---Макс. разрешение видео--4К|

Мультимедийные возможности---Макс. частота кадров видео--60 кадров/с|

Мультимедийные возможности---Фронтальная камера--7 Мп|

Мультимедийные возможности---Фотокамера--12 Мп|

Мультимедийные возможности---Аудио--AAC (от 8 до 320 кбит/с), защищённый AAC (для файлов из iTunes Store), HE‑AAC, MP3 (от 8 до 320 кбит/с), MP3 VBR, Dolby Digital (AC‑3), Dolby Digital Plus (E‑AC‑3), Audible (форматы 2, 3, 4, Audible Enhanced Audio, AAX и AAX+), Apple Lossless, AIFF и WAV|

Память и процессор---Процессор--A12X Bionic с 64‑битной архитектурой|

Память и процессор---Поддержка карт памяти--нет|

Память и процессор---Объем встроенной памяти--256 ГБ|

Связь---Интерфейсы--Wi-Fi IEEE 802.11ac, Bluetooth 5.0|

Питание---Тип аккумулятора--Li-polymer|

Питание---Емкость аккумулятора--36,71 Вт∙ч|

Питание---Время работы--До 10 часов работы в интернете по сети Wi‑Fi, просмотра видео или прослушивания музыки|

Другие функции---Датчики--Face ID, Трёхосевой гироскоп, Акселерометр, Барометр, Датчик внешней освещённости|

Дополнительная информация---Комплектация--iPad Pro, Кабель USB‑C для зарядки (1 м), Адаптер питания USB‑C мощностью 18 Вт|

Змінено користувачем Reanimaster
Надіслати
Поділитися на інших сайтах


8 минут назад, Rassol2 сказал:

@Reanimaster и что вы этим хотите сказать ?
 

В демо у вас BigGeek.
Паршу характеристики, но нужно вместе с группой.
Путем мозгового штурма, получаю то, что под 1 спойлером.

Регулярка выше должна делать то, что под 2 спойлером.
Во всяком случае - так задумывается))
Признаюсь, не мой код. Но он блин работает))

А в плагине не работает(

Змінено користувачем Reanimaster
Корректировка
Надіслати
Поділитися на інших сайтах


23 минуты назад, Reanimaster сказал:

В демо у вас BigGeek.
Паршу характеристики, но нужно вместе с группой.
Путем мозгового штурма, получаю то, что под 1 спойлером.

Регулярка выше должна делать то, что под 2 спойлером.
Во всяком случае - так задумывается))
Признаюсь, не мой код. Но он блин работает))

А в плагине не работает(

у вас там правило в повторяющейся границе парсинга а не в обычной.
Так что правило применяется не ко всему тексту. А тольк к одному повторению.
Правило применяется к этому
 

Спойлер

Sb3hVcM.png


как работает в данном случаи регулярное выражение я описал в этом посте.
https://opencartforum.com/topic/123017-podderzhka-simplepars-universalnyy-parser-dlya-im/?do=findComment&comment=1617702

 

Но поскольку вы пока только тестируете возможности модуля и если есть желание понять как работают регулярнки в модуле обратитесь к документации php по регуляркам.
В частности к функции - https://www.php.net/manual/ru/function.preg-replace.php

 

 

Надіслати
Поділитися на інших сайтах

6 минут назад, Rassol2 сказал:

у вас там правило в повторяющейся границе парсинга а не в обычной.
Так что правило применяется не ко всему тексту. А тольк к одному повторению.
Правило применяется к этому
 

  Показать контент

Sb3hVcM.png


как работает в данном случаи регулярное выражение я описал в этом посте.
https://opencartforum.com/topic/123017-podderzhka-simplepars-universalnyy-parser-dlya-im/?do=findComment&comment=1617702

 

Но поскольку вы пока только тестируете возможности модуля и если есть желание понять как работают регулярнки в модуле обратитесь к документации php по регуляркам.
В частности к функции - https://www.php.net/manual/ru/function.preg-replace.php

 

Пускай и так. Но в моем случае правило просто удаляет все. На выходе пусто. Не могли бы помочь?

И еще вопрос.
"Что используется на бекенде, поддерживаются ли заглядывания назад с кванторами неопределённой длины и как передавать модификаторы вроде /gms"
Это выдержка из места, где я взял регулярку на stackoverflow.

Спойлер

image.png.32e4bc2d1c55ba124bff7ee5b309872c.png

 

Змінено користувачем Reanimaster
Надіслати
Поділитися на інших сайтах


1 минуту назад, Reanimaster сказал:
  Скрыть контент

image.png.32e4bc2d1c55ba124bff7ee5b309872c.png

 

мне не понятно зачем вы присылаете эти примеры ?
Во первых они на js а я в нем не понимаю и какой характер функции в js и насколько он совпадает по функционалу с preg_replace

Мне не известно.
 

Надіслати
Поділитися на інших сайтах

1 минуту назад, Rassol2 сказал:

мне не понятно зачем вы присылаете эти примеры ?
Во первых они на js а я в нем не понимаю и какой характер функции в js и насколько он совпадает по функционалу с preg_replace

Мне не известно.
 

Понял. Вы можете помочь с правильным регулярным выражением, которое отработает в вашем плагине и на языке, который вы понимаете?
Что должно получиться, я объяснил, полагаю.
Объясню зачем этот геморрой. Плагин не умеет работать с группами атрибутов. А когда товара будет больше 10к с разных сайтов - атрибуты вручную по группам разносить - занятие еще то. 
У меня есть плагин для импорта из CSV. Отлично все делает, но долго и муторно. Парсить в вашем что в ИМ, что в CSV - просто сказка. То, что мне потребуется несколько плагинов, я уже понимаю. Хочу определиться какие плагины нужны. Там где я получу все, что желаю - то и куплю.

Надіслати
Поділитися на інших сайтах


9 минут назад, Reanimaster сказал:

Понял. Вы можете помочь с правильным регулярным выражением, которое отработает в вашем плагине и на языке, который вы понимаете?
Что должно получиться, я объяснил, полагаю.
Объясню зачем этот геморрой. Плагин не умеет работать с группами атрибутов. А когда товара будет больше 10к с разных сайтов - атрибуты вручную по группам разносить - занятие еще то. 
У меня есть плагин для импорта из CSV. Отлично все делает, но долго и муторно. Парсить в вашем что в ИМ, что в CSV - просто сказка. То, что мне потребуется несколько плагинов, я уже понимаю. Хочу определиться какие плагины нужны. Там где я получу все, что желаю - то и куплю.

не уверен что я вам смогу помочь.
Вы пытаетесь при помощи регулярных выражений размножить текст.

То есть из вот этого
 

Спойлер

r5ogzOy.png

 

Сделать вот это
 

Спойлер

wd0vTr3.png

То есть на доноре он встречается один раз. А вы хотите размножить этот текст на 4 раза. И сделать это срез поиск замену.
да так что бы модуль сам определил какой текст, и сколько раз умножить и еше и сам определил куда это всунуть.

Я не представляю как это сделать.
Ну кроме одного варианта.
Где вы каждую группу атрибутов парсите отдельной границей. И тогда в каждую отдельную группу настраиваете на вставку нужного вам текста. Тогда да это реально.
Но в вашем формате я не не представляю как это реализовать.

  • +1 1
Надіслати
Поділитися на інших сайтах

12 минут назад, Rassol2 сказал:

не уверен что я вам смогу помочь.
Вы пытаетесь при помощи регулярных выражений размножить текст.

То есть из вот этого
 

  Скрыть контент

r5ogzOy.png

 

Сделать вот это
 

  Показать контент

wd0vTr3.png

То есть на доноре он встречается один раз. А вы хотите размножить этот текст на 4 раза. И сделать это срез поиск замену.
да так что бы модуль сам определил какой текст, и сколько раз умножить и еше и сам определил куда это всунуть.

Я не представляю как это сделать.
Ну кроме одного варианта.
Где вы каждую группу атрибутов парсите отдельной границей. И тогда в каждую отдельную группу настраиваете на вставку нужного вам текста. Тогда да это реально.
Но в вашем формате я не не представляю как это реализовать.

Формально не так. Ведь регулярками я привел его к виду

Спойлер

Общие характеристики---Операционная система--iOS 12|
;Материал корпуса--Алюминий|
;Вес--631 гр|
;Размеры--280,6x 214,9x 5,9 мм|

Конструкция---QWERTY-клавиатура--опционально|

Экран---Тип экрана--Liquid Retina|
;Экран--12,9"|
;Разрешение экрана--2732×2048|
;Автоматический поворот экрана--есть|
;Число пикселей на дюйм (PPI)--264|

Мультимедийные возможности---Запись видеороликов--есть|
;Макс. разрешение видео--4К|
;Макс. частота кадров видео--60 кадров/с|
;Фронтальная камера--7 Мп|
;Фотокамера--12 Мп|
;Аудио--AAC (от 8 до 320 кбит/с), защищённый AAC (для файлов из iTunes Store), HE‑AAC, MP3 (от 8 до 320 кбит/с), MP3 VBR, Dolby Digital (AC‑3), Dolby Digital Plus (E‑AC‑3), Audible (форматы 2, 3, 4, Audible Enhanced Audio, AAX и AAX+), Apple Lossless, AIFF и WAV|

Память и процессор---Процессор--A12X Bionic с 64‑битной архитектурой|
;Поддержка карт памяти--нет|
;Объем встроенной памяти--256 ГБ|

Связь---Интерфейсы--Wi-Fi IEEE 802.11ac, Bluetooth 5.0|

Питание---Тип аккумулятора--Li-polymer|
;Емкость аккумулятора--36,71 Вт∙ч|
;Время работы--До 10 часов работы в интернете по сети Wi‑Fi, просмотра видео или прослушивания музыки|

Другие функции---Датчики--Face ID, Трёхосевой гироскоп, Акселерометр, Барометр, Датчик внешней освещённости|

Дополнительная информация---Комплектация--iPad Pro, Кабель USB‑C для зарядки (1 м), Адаптер питания USB‑C мощностью 18 Вт|
 

Значит обработка этого текста а не исходного.

Формально, как я это вижу.

Берется первая строка, начинающаяся не с символа -; и сожержащая ---.

Она берется в $1

Дальше идет построчно и заменяет каждый сивол ; на $1 до первого вхождения отсутствия символа ; в начале строки.

И так далее. Цикл своего рода.

Надіслати
Поділитися на інших сайтах


20 минут назад, Rassol2 сказал:

не уверен что я вам смогу помочь.
Вы пытаетесь при помощи регулярных выражений размножить текст.

То есть из вот этого
 

  Показать контент

r5ogzOy.png

 

Сделать вот это
 

  Показать контент

wd0vTr3.png

То есть на доноре он встречается один раз. А вы хотите размножить этот текст на 4 раза. И сделать это срез поиск замену.
да так что бы модуль сам определил какой текст, и сколько раз умножить и еше и сам определил куда это всунуть.

Я не представляю как это сделать.
Ну кроме одного варианта.
Где вы каждую группу атрибутов парсите отдельной границей. И тогда в каждую отдельную группу настраиваете на вставку нужного вам текста. Тогда да это реально.
Но в вашем формате я не не представляю как это реализовать.

То есть формально 

Сделать из Этого

Спойлер

image.png.b99b0bf2810ce372024665e690041496.png

Это

Спойлер

image.png.d64788485479e8ffdf1ada54bf73e255.png

 

Надіслати
Поділитися на інших сайтах


13 минут назад, Reanimaster сказал:

Значит обработка этого текста а не исходного.

нет.
В повторяющихся границах парсинга обработка идет именно этого текста.
 

Спойлер

rqLqGQ1.png

Без учета того что я выделил синм. Этот текст идет как показатель границы парсинга для вас как пользователя. И все правила применяются к каждой итерации повторяющейся границы парсинга. Именно так и ни как иначе.
А то что ниже это модуль вам уже склеивает и показывает финальный результат после выполнения всех правил, и когда граница превряшается просто в текстовую строку которая будет передана дальше на заполнения товара или csv файла.

Это работает именно так и ни как иначе.

 

13 минут назад, Reanimaster сказал:

Она берется в $1

Дальше идет построчно и заменяет каждый сивол ; на $1 до первого вхождения отсутствия символа ; в начале строки.

И так далее. Цикл своего рода.

С чего вы решили что текст берется В $1 ?

Все это описано. Но объясню вам по другому.
oMqu5t7.png

В красном прямоугольнике вы задаете правило в виде регулярного выражения а в синем квадрате вы задаете на что поменять.
пример выше будет равен
preg_replace('#(;.*$)#', '', $text);

Тут нету никаких сохранении.

Но цикл в вашем случаи есть и он как раз вот тут
 

Спойлер

XJKlwWk.png

Вот первые данные прогнали по всем правилам.
Затем вторые.

А в конце все это склеили в один кусок.
 

Надіслати
Поділитися на інших сайтах

6 минут назад, Reanimaster сказал:

То есть формально 

Сделать из Этого

  Показать контент

image.png.b99b0bf2810ce372024665e690041496.png

Это

  Показать контент

image.png.d64788485479e8ffdf1ada54bf73e255.png

 

В поиск заменен нету такого понятия как найти текст и куда то его сохранить для последующего использования.
Только так

Нашел -> Заменил

И все.

Надіслати
Поділитися на інших сайтах

5 минут назад, Rassol2 сказал:

В поиск заменен нету такого понятия как найти текст и куда то его сохранить для последующего использования.
Только так

Нашел -> Заменил

И все.

Ну а как насчет gms?
Ищет во всем тексте, нашел заменил, но построчно?

Надіслати
Поділитися на інших сайтах


1 минуту назад, Reanimaster сказал:

Ну а как насчет gms?
Ищет во всем тексте, нашел заменил, но построчно?

я вам уже ответил на этот вопрос все поддерживается.
Сами указываете нужный вам модификатор.

Надіслати
Поділитися на інших сайтах

13 минут назад, Rassol2 сказал:

я вам уже ответил на этот вопрос все поддерживается.
Сами указываете нужный вам модификатор.

Хорошо. Просто покажите пример с применением модификаторов. 

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.