-
Fototrend

Új hozzászólás Aktív témák
-
pittbaba
aktív tag
Sziasztok!
Egy jó kis regexpre lenne szükségem, segítsetek nekem.
Az alap helyzet, hogy GTFS adatbázisból (google helymeghatározós adatbázis) szeretném felvinni az adatokat adatbázisba.
A fájl formátuma nagyon hasonlít a CSV-hez ,de vesszőkkel vannak elválasztva a mezők, nem pontosvesszővel.Ez nekem tök előnyös egy darabig, mert az SQL insertet különösebb nehézség nélkül meg tudom oldani.
A fájl első sorából megkapom a mező neveket, a következő sorokból meg a hozzájuk tartozó értékeket:
INSERT INTO table (t1,t2,t3,t4) VALUES ( c1,c2,c3,c4)Így igazából nem kell hozzányúlnom semmihez ahogy kiszedek stringbe egy sort, az már használható is. Viszont van néhány nehézség (az egyszerűség kedvéért minden TEXT típus):
Vannak olyan tartalmak amik üresek:
INSERT INTO table (t1,t2,t3,t4) VALUES ( c1,,,c4) ez hibát generál a helyes forma:
INSERT INTO table (t1,t2,t3,t4) VALUES ( c1,"","",c4)A nem üres tartalmakat is "" vagy '' közé kell rakni:
INSERT INTO table (t1,t2,t3,t4) VALUES ( "c1","","","c4")Ezt meg tudtam oldani, viszont ez után jött amin megakadtam tegnap óta, vannak olyan tartalmak mikor így néz ki a dolog:
INSERT INTO table (t1,t2,t3,t4) VALUES ( c1,c2,"Csepel, Szent Imre tér, Cseresznyés utca",c4)Ez azért gond, mert eddig úgy oldottam meg, hogy , csere ',' -re, majd ,' " csere ," -re és " ', csere ",
A végeredmény (minden alkalommal a string elejére és a végére tettem egy -egy ' jelet persze):INSERT INTO table (t1,t2,t3,t4) VALUES ( 'c1','c2',"Csepel',' Szent Imre tér',' Cseresznyés utca",'c4')
Ez már majdnem jó, de a " " közötti ','-ket kellene nekem még ,-re konvertálni. Nem lehet tudni hány vessző van, van ahol egy, van ahol 3.

Várom a megfejtéseket, szerintem ez jó kis feladat

Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- GYÖNYÖRŰ iPhone 14 Pro Max 256GB Deep Purple-1 ÉV GARANCIA - Kártyafüggetlen, MS4398, 100% Akksi
- Keresünk Galaxy S21/S21+/S21 Ultra/S21 FE
- Kaspersky, BitDefender, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- ThinkPad T14s Gen 2 i5-1135G7 16GB 512GB FHD 1 év garancia
- Samsung Galaxy Watch8 Classic LTE 46mm, 1 Év Garanciával
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs




