- votlage71: Kábel menedzsment
- Elektromos rásegítésű kerékpárok
- GoodSpeed: AMD Ryzen 9 9900X (100-100000662WOF)+ Samsung 990 PRO 2TB MZ-V9P2T0BW
- sziku69: Fűzzük össze a szavakat :)
- Kempingezés és sátrazás
- Luck Dragon: Asszociációs játék. :)
- gban: Ingyen kellene, de tegnapra
- laskr99: Processzor és videokártya szilícium mag fotók újratöltve!
- LordAthis: Ismét egy "Idióta" A.I. Projekt, hogy meglovagolja az aktuális trendeket...
- hege8888: Retro Kocka Kuckó 3
-
LOGOUT
Ú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
Hirdetés
● olvasd el a téma összefoglalót!
- Xiaomi 14 512GB, Kártyafüggetlen, 1 Év Garanciával
- GYÖNYÖRŰ iPhone 13 512GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3079, 100% Akkumulátor
- Keychrone Q1 V2 billentyűzet / Számla / Garancia /
- BESZÁMÍTÁS! ASUS TUF A620M R5 7600X 32GB DDR5 1TB SSD RX 6700 XT 12GB ZALMAN I3 NEO A-Data 750W
- Telefon felvásárlás!! Samsung Galaxy S25, Samsung Galaxy S25 Plus, Samsung Galaxy S25 Ultra
Állásajánlatok
Cég: FOTC
Város: Budapest