( bucko | 2021. 03. 23., k – 08:17 )

Van ilyen tool!

Úgy hívják awk és program, amit meg kell írni.

A problémád tipikus addattisztítási feladat:

  • kell egy minta, amire illeszkednek az 1. típusú rekordok
  • kell egy minta, amire illeszkednek az 2. típusú rekordok/a maradék
  • kell egy minta, amire illeszkednek az 3. típusú rekordok/a maradék
  • megnézzük mi maradt
    • utána esetleg újabb minta, vagy
    • javító algoritmus
  • loop, amíg el nem fogynak a rekordok vagy a hiba mennysége kellő mértékben csökken

Egyes esetekben lehet javító szótárat építeni. Pl.:

"well-formed"=Budapest ->szótárba (persze ilyen már van)

A megtalált hibák alapján kialakulhat egy szótár sor: Budapest,budappest,BudiPest,budoPest

Itt az első trükk a nagybetűsítés!!

A szótár sorokból készül egy regexp szótár (tömb). Ha az Input nagybetűsített elem megegyezik a szótár bármely elemével, akkor találat. Ilyenkor az erdeti inputot cseréljük a szótár sor fő elemére. Ha változott, akkor hiba++.

A maradék nincs a szótárban - pl. Csepel. ;) Szemrevételezés után csaphatjuk a javító szótárhoz: BUDAPEST=Budapest,budappest,BudiPest,budoPest,Csepel

Aztán loop.

Az élet nem oneliner. ;)