Merkkien käsittely

ediävaipythonia

Hei,
Kyseessä linux.
Käytössä shell ja python, mieluiten shell.

Data on:
abbd
dbdb
adbd
babb

Miten voin toteuttaa tehokkaasti:
1. jokaiselta riviltä vain 2:detta ja 3:metta merkkiä tulee käsitellä
2. jos käsiteltävä merkki on b tulee se korvata merkillä _

Tällöin esimerkin datasta pitäsi saada:
a__d
d_db
ad_d
ba_b

Miten tämä,kiltit gurut kertokaa.

jos teen esim:
sed s/b/_/g
tämä ei toimi palauttaa:
a__d
d_d_
ad_d
_a__


Kiitä teitä

5

152

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • dfgdgdg

      Tämmönen pyyttonilla. Tehtävänanto kuulostaa hieman keinotekoiselta mutta tämän pitäis toimia jos tarivitsee sattumoisin monimutkaisempiakin merkkimuunoksia tehdä.

      Katsotaan menikö pahasti rikki kun heitin html escape työkalun läpi

      import string

      if __name__ == '__main__':
          # kaannostaulu
          tt = string.maketrans("b", "_")

          # data voisi olla tiedostokin
          data = ["abbd",
                  "dbdb",
                  "adbd",
                  "babb"]

          for row in data:
              print row[0]   string.translate(row[1:3], tt)   row[3:]


      Tuottaa:
      a__d
      a_db
      ad_d
      ba_b

      • sdsdff

        Siis tuottaa (oli alkujaan typo mutta unohin korjata tästä)
        a__d
        d_db
        ad_d
        ba_b


      • sdfsdfdss
        sdsdff kirjoitti:

        Siis tuottaa (oli alkujaan typo mutta unohin korjata tästä)
        a__d
        d_db
        ad_d
        ba_b

        Laitetaan nyt vielä selitys maketranssista. Se siis tekee tuollaisen käännöstaulukon annetuista parametreistä ja kääntää ne kaikki kerralla.

        Esim. jos haluaisit kääntää a->b, b->c, d->e niin se onnistuisi string.maketrans("abc", "bce")


      • sdfgfg
        sdfsdfdss kirjoitti:

        Laitetaan nyt vielä selitys maketranssista. Se siis tekee tuollaisen käännöstaulukon annetuista parametreistä ja kääntää ne kaikki kerralla.

        Esim. jos haluaisit kääntää a->b, b->c, d->e niin se onnistuisi string.maketrans("abc", "bce")

        Tietty jos ei ikinä eikä missään tilanteessa ole tarvista muille kuin yhden merkin käännöksille niin sitten ihan normaali replace käy myös


      • se kysysja
        sdfgfg kirjoitti:

        Tietty jos ei ikinä eikä missään tilanteessa ole tarvista muille kuin yhden merkin käännöksille niin sitten ihan normaali replace käy myös

        Tämä on tosi siisti.

        Kiitos.

        Sitten mitä tulee keinotekoiseen, myös aspartaami on.


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Miksi persut eivät häädä mamuja pois Suomesta?

      Sitä vartenhan persut äänestettiin valtaan. Nyt valta on persuilla. Mamut nostaa työttömyyskorvauksia. Persut huutaa mam
      Maailman menoa
      238
      6001
    2. Eduskunnan setämiehet eivät häiritse

      Porvariston sedät kertoivat kuorossa, että eivät tiedä häirinnästä mitään.
      Maailman menoa
      39
      4828
    3. KL - Sähköautoilu aiheuttaa lisäkustannuksia muille tehopiikkimaksujen muodossa!

      Kauppalehti 15.1.2026 Kommentti / Sähköautoista tuli ongelma – Uusi ”vero” uhkaa Kun perhe ostaa sähköauton ja laittaa
      Hybridi- ja sähköautot
      10
      4286
    4. Jaguar i pace sähköauto hajosi. Jopa 100 tonnia akun vaihto. Edullisia kilometrejä

      https://www.iltalehti.fi/autouutiset/a/fcaa5ae4-c04d-414d-ac54-dab991758b2e Tuo että sähköautossa ei lämmitys toimi on
      Hybridi- ja sähköautot
      12
      3031
    5. Sanna Marinille pedataan paluuta pääministeriksi?

      Näyttäisi mylly lähteneen käyntiin nyt toden teolla. Nykyiset oikeistodemarit haukutaan vasemmistodemareiden toimesta ni
      Maailman menoa
      119
      2987
    6. Muistakaa demarit, että TE petitte, ei vihreät tai vas.liitto

      Te veitte eduskunnasta turvallisen tilan, veditte sen viemäristä alas. Te demarit, itsensä ylentäneet moraalinvartijat,
      Maailman menoa
      77
      2469
    7. Silminnäkijät kertovat IS:lle useista törkeistä SDP:ssä tapahtuneista häirintätapauksista.

      https://www.is.fi/politiikka/art-2000011749874.html Silminnäkijöiden Iltasanomille kertomusten mukaan SDP:ssä on tapahtu
      Maailman menoa
      121
      2416
    8. Nainen, kaiken aikaa olin yläpuolella

      Ja olen edelleen kaiken yläpuolella. Ja niin on aina oleva. :/
      Ikävä
      190
      1679
    9. Oletko ollut

      Oletko omasta mielestäsi ollut sokea asioille?
      Ikävä
      46
      1649
    10. Bussipysäkki katos!

      Mitäpä mieltä uudesta katoksesta?
      Suomussalmi
      69
      1336
    Aihe