Сопоставление данных из двух границ

Тема в разделе "Решение различных задач по парсингу", создана пользователем TeslaCo, 20 авг 2021.

  1. TeslaCo

    TeslaCo Member Пользователи

    Регистрация:
    4 мар 2014
    Сообщения:
    211
    Здравствуйте, в коде парсим два отрывка, в одной границе парсинга получается:
    Код:
    (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,_,$,aa,ab,ac,ad,ae,af)
    в другой границе:
    Код:
    (null,false,0,"ОРАЛЕЙР АЛЛЕРГЕН ПЫЛЬЦЫ ЛУГОВЫХ ТРАВ табл. №31 начал.курс",42,"Аллергология",43,"Аллергены","635bad3b-ac47-11e4-99f0-00a0d1e7f610","Сталлержен, Франция","0000600317",63810,"\u002Fupload\u002Fiblock\u002Ffe7\u002Ffe77bbd6c8fa76eb2a18a253e931679f\u002Ff1be0cb6bc4bc54ab508305de9457d5e.jpg","+7 930 801-08-21","\u002Fupload\u002Fdef_drustore.png",3,4220,"Пн-Пт: 08.00 - 21.00 Сб - Вс: 08.00 - 20.00 ",12,"Автозаводский",6,25,"Сормовский","Советский",11,"Канавинский",15,"Нижегородский",10,"Ленинский","",23,13,"Московский",31,"Приокский",1,4520,true,"Пн - Вс: 08.00 - 20.00 ",3810,500,"Нижний Новгород","Пн-Пт: 08.00 - 21.00 Сб - Вс: 09.00 - 21.00 ","Аллергены трав пыльцевые","\u002Fcatalog\u002Fallergologiya\u002F","\u002Fcatalog\u002Fallergologiya\u002Fallergeny\u002F",255,247,"Новинки",2,22,"Пн-Пт: 08.00 - 22.00 Сб - Вс: 08.00 - 20.00 ","Пн - Вс: 08.00 - 21.00 ",43.867017,"Пн - Вс: 09.00 - 20.00 ","Пн-Пт: 07.30 - 21.30 Сб - Вс: 08.00 - 20.00 ","51","Пн - Вс: Круглосуточно ","Пн-Пт: 08.00 - 21.00 Сб - Вс: 08.00 - 19.00 ")
    Подскажите как их сопоставить между собой, для того что бы потом произвести поиск замену в других границах парсинга?

    Например:
    Код:
    a|null
    b|false
    c|0
    d|ОРАЛЕЙР АЛЛЕРГЕН ПЫЛЬЦЫ ЛУГОВЫХ ТРАВ табл. №31 начал.курс
    и т.д. по порядку
    поиск замена для кода (из третей границы):
    Код:
    {id:712,urlId:"318",title:"Аптека, Нижний Новгород, ул. Бориса Корнилова, д.2",xmlId:"5e59b53a-afd4-11e6-92ed-00155d000207",location:k,city:a,district:{id:u,name:x},schedule:r,phone:"(831)435-47-23 ",regionPhone:n,address:"ул. Бориса Корнилова, д.2",latitude:56.301988,longitude:44.042224,image:o,favourite:b,offers:[{id:l,name:d,xmlId:i,price:q,oldPrice:c,picture:m,inFavourites:b,deliveryTime:p,dateExp:a,bonusCount:c,isBonus:b,category:[{id:e,name:f},{id:g,name:h}],brandString:j,vidP:a,vidPValue:a,quantity:c}]}
    
    {id:1141,urlId:"259",title:"Аптека, Нижний Новгород, ул. Бориса Панина, д.10",xmlId:"54756eb3-c432-11e5-bf0c-00155d000316",location:k,city:a,district:{id:u,name:x},schedule:r,phone:"(831) 428-84-39",regionPhone:n,address:"ул. Бориса Панина, д.10",latitude:56.310038,longitude:44.028732,image:o,favourite:b,offers:[{id:l,name:d,xmlId:i,price:q,oldPrice:c,picture:m,inFavourites:b,deliveryTime:p,dateExp:a,bonusCount:c,isBonus:b,category:[{id:e,name:f},{id:g,name:h}],brandString:j,vidP:a,vidPValue:a,quantity:c}]}
    
    {id:607,urlId:"47",title:"Аптека, Нижний Новгород, ул. Большая Покровская, д.29",xmlId:"7cd7b8c2-ba7a-11e3-8662-00a0d1e7f610",location:k,city:a,district:{id:A,name:B},schedule:R,phone:"(831) 433-35-73",regionPhone:n,address:"ул. Большая Покровская, д.29",latitude:56.320473,longitude:43.998288,image:o,favourite:b,offers:[{id:l,name:d,xmlId:i,price:L,oldPrice:c,picture:m,inFavourites:b,deliveryTime:c,dateExp:a,bonusCount:F,isBonus:b,category:[{id:e,name:f},{id:g,name:h}],brandString:j,vidP:a,vidPValue:a,quantity:K}]}
    
    
    а именно для параметров:
    quantity:c
    quantity:K
    price:q
    price:L

    в итоге (после поиска-замены) должно получится так:
    quantity:c => quantity:0
    quantity:K => quantity:1
    price:q => price:4220
    price:L => price:4520
     
  2. TeslaCo

    TeslaCo Member Пользователи

    Регистрация:
    4 мар 2014
    Сообщения:
    211
    Разобрался, может кому-то пригодится:
    задать две повторяющиеся границы на код этих обычных, а далее задать шаблон по этой справке:
    Ссылки недоступны для гостей
     
    Root нравится это.

Поделиться этой страницей