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
197
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
Silmienvääntelijä-persut pääsivät Japanissa sarjakuvaan
Torille! https://www.hs.fi/kulttuuri/art-2000011943173.html664408Avopuoliso, mies-/naisystävä vai mikä?
Kävin eilen irl keskustelun, joka jätti minut pohtimaan seuraavaa ... millä nimityksellä kutsua henkilöä, jonka kanssa o2454164Miksi Kuhmolaiset on niin nyrpeä ilmeisiä?
Miksi suurin osa (ei onneksi kaikki) on niin typääntyneen näkösiä elämäänsä? Tuijotetaan toisia pahansuopaisesti ja kat223344Huvittava ilmiö: Vasemmistolaiset uskoo sokeasti SDP:n parantavan heidän
elämäänsä, jos demarit johtaa seuraavaa hallitusta (Kyse on siis palstan vasemmistolaisista) Totuus on toinen, nimittäi1563281Riikka ohoi! Saksa alensi bensaveroa, missä euron bensa?
Perussuomalaisten yksi vaalilupauksista oli euron bensiini suomalaisille autoilijoille. Ei ole näkynyt. Jopa vasemmis653054Tulipalo rivitalossa, tuhoutuu täysin
Kainuun pelastuslaitos sai hieman puolenyön jälkeen maanantaina ilmoituksen rivitalon huoneistossa syttyneestä tulipalos752889Kyllä, maata ei halua puolustaa nimenomaan punavihreän puolen edustajat
"Esimerkiksi maanpuolustushenki on keskimääräistä alempana naisten, arvoliberaalien, heikossa taloustilanteessa olevien1192583Älkää vaan sairastuko syöpään Suomessa
Tilaston mukaan Suomi, Slovakia ja Latvia lääkitsee aivan pohjamudissa syöpää. Sairastunutta hoidetaan edelleen vanhana1682400- 482205
- 241820