Miten haen alimerkkijonon kaikki esiintymät merkkijonosta yhdellä komennolla?
Esim:
merkkij="abcdefhabcdefghijabcdefghijklabcdefghijklmnoabcdefghijklmnopqrs"
Eli ylläolevasta pitäisi löytää kaikki "abc" ilmentymät ja saada niiden indeksi. Pitäisi päästä jatkamaan löydetyn alimerkkijonon(jos sellaista on) indeksistä eteenpäin.
Merkkijonosta hakeminen
Tauno(=tauno)
2
248
Vastaukset
- Piru
while(merkkijono.indexOf('abc') > -1)
{
indeksi = merkkijono.indexOf('abc');
merkkijono = merkkijono.substring(indeksi);
//tee jotain jäljellä olevalle merkkijonolle
} - Expertti
Pääsääntöisesti tekstihakuihin kannattaisi käyttää regular expressioneja. Ne ovat siihen tarkoitukseen suunniteltuja ja nopeudeltaan aivan eri luokkaa kuin mitkään while-silmukat (varsinkin jos haku on "käännetty" sen luonnin jälkeen). Niillä saa myös hyvin pienellä koodimäärällä käsiteltyä merkkijonoja hyvinkin paljon.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 396895
- 323888
- 453270
- 342844
- 162662
- 372228
- 162176
- 372082
Voi ei! Jari Sillanpää heitti keikan Helsingissä - Hämmästyttävä hetki lavalla...
Ex-tangokuningas on parhaillaan konserttikiertueella. Hän esiintyi Savoy teatterissa äitienpäivänä. Sillanpää jakoi kons482037- 371952