Задать вопрос
Ответы пользователя по тегу Yandex Market Language
  • Как в yml заменить одну строку на другую, если в каждой разные цифры?

    @Dasolod
    Общая концепция в том что вам нужно найти все это одним запросом, и потом произвести замену используя постановки найденной подстроки.
    Если показывать на примере то вам нужно заменить
    (<offer id=")(.*)(".*<vendorCode>)(.*)(<)
    на
    \1\4\3\4\5
    Главное не забудьте включить "и новые строки"

    Или если вам удобнее картинкой:
    62194e3424fdd796908283.jpeg

    Каждая найденная скобка нумеруется с единицы, и их можно использовать при "замене". Тут мы выделили отдельно код из офера, и код вендора, и подставили второй вместо первого, и самого себя.
    Тестировалось на этом тексте:
    <offer id="12312312321" available = true>
    sdfa
    asdfas
    asdfa
    sf
    <><<>><><><
    <vendorCode>261913</vendorCode>

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