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ä
Merkkien käsittely
5
147
Vastaukset
- 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_bLaitetaan 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
Suomen markka otettiin käyttöön vuonna 1860
Suomi käytti vuoteen 1840 asti rahayksikkönään rinnakkain Ruotsin riikintaalareita ja Venäjän ruplaa. Tämän jälkeen oli439678Kaivatullesi viesti ensi vuoteen?
Kerro meneekö naiselle vai miehelle ja vähintään yksi tunniste, esim. kirjain.694857"Mä elän vieläkin"
Ikurin turbiini vetäisi taannoin lainabiisin Topin (RIP också) ja kumppaneiden kanssa. Toivottavasti on yläkerrassa kunn584304Pate Mustajärvi on kuollut
Ihan pari tuntia sitten. Että sellaista. https://www.is.fi/viihde/art-2000011715177.html1372816Yksityinen sektori aiheuttanut Suomen taantuman
Investointien sijasta nostaneet voitot osinkoina omistajille. Ehdotan korjausliikkeenä yksityisen sektorin sosialisoimi1282635Nyt Yle otti silmätikukseen sisäministeri Rantasen
Aivan erinomaista työtä tehnyt sisäministeri Mari Rantanen on saanut paljon aikaiseksi. Maahanmuuttoon ja maahanmuuttaji1712442Miten ikinä kelpaisin sulle
Sinä saat niiltä muilta naisilta paljon enemmän, mitä minulta... Tai mihin minä olisin valmis. Enkä edes olisi niin tait221800- 201587
Edes vitamiinit eivät taanneet loputonta elämää
Nimittäin niistä rahaa itselleen taikonut tohtori siirtyi tuonpuoleiseen.361530Älä nyt ainakaan pelkää
että enää yritän lähelle. Kyllähän toisen rajoja on kunnioitettava. Olen ymmärtänyt täysin, että en kiinnosta sillä tava72970