sql >> Databáze >  >> RDS >> Sqlserver

Analyzujte použitelnou ulici, město, stát, PSČ z řetězce

Na tomto druhu analýzy jsem udělal hodně práce. Vzhledem k tomu, že existují chyby, nezískáte 100% přesnost, ale existuje několik věcí, které můžete udělat, abyste se tam dostali co nejvíce, a poté provést vizuální test BS. Zde je obecný způsob, jak na to. Není to kód, protože jeho psaní je docela akademické, nejsou v tom žádné podivnosti, jen spousta práce s řetězci.

(Nyní, když jste zveřejnili ukázková data, provedl jsem několik drobných změn)

  1. Pracujte zpět. Začněte od PSČ, které bude blízko konce, a v jednom ze dvou známých formátů:XXXXX nebo XXXXX-XXXX. Pokud se toto nezobrazí, můžete předpokládat, že se nacházíte ve městě, státní části, níže.
  2. Další věcí před zipem bude stav a bude buď ve dvoupísmenném formátu, nebo jako slova. Víte také, jaké to budou - je jich jen 50. Také můžete slova ozvučit, abyste pomohli kompenzovat pravopisné chyby.
  3. před tím je město a to pravděpodobně na stejné lince jako stát. Můžete použít databázi PSČ zkontrolovat město a stát na základě zipu, nebo jej alespoň použít jako BS detektor.
  4. Ulice bude obecně obsahovat jeden nebo dva řádky. Na druhém řádku bude obecně číslo apartmá, pokud nějaké existuje, ale může to být také poštovní schránka.
  5. Bude téměř nemožné zjistit jméno na prvním nebo druhém řádku, i když pokud před ním není číslo (nebo pokud je předponou „attn:“ nebo „attention to:“, mohlo by vám to poskytnout nápovědu, zda se jedná o název nebo řádek adresy.

Doufám, že to trochu pomůže.



  1. MySQL:Převeďte INT na DATETIME

  2. Ukládání HABTM pomocí dalších polí?

  3. Jak zjistím poslední den předchozího měsíce pomocí PostgreSQL?

  4. Ověřování pomocí starého hesla již není podporováno, použijte hesla ve stylu 4.1