Merkkijonojen korvaaminen toisella

§§§§§§

Eli, kysymys on seuraavanlaisesta:

Yritän tässä harjoitella alkeita ja seuraavaksi olisi tarkoitus duunata jonkinlainen sanakirja. Ongelmana onkin nyt sanojen korvaaminen toisilla. Eli, jos minulla olisi vaikka seuraavanlainen koodi:

Scanner skanner = new Scanner (System.in);
System.out.print("Word?");
String word = skanner.nextLine();
word = word.replaceAll("koira", "dog");

niin ohjelma muuttaa esimerkiksi tekstin "minulla on susikoira" > "minulla on susidog".
Mikä on taikasana javassa sille, että pystyisin korvaamaan tietyt _kokonaiset_ sanat niin, ettei sanojen osia edes tutkittaisi?

Toinen ongelmani liittyy juurikin noihin sanoihin. Onko javassa mahdollista luoda tälle > word = word.replaceAll("koira", "dog"); jonkinlaista taulukkovastinetta? eli yhdessä taulukossa olisi isompi läjä sanoja/tietyt korvaavat sanat jokaiselle?

1

279

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • yksi vain

      "Mikä on taikasana javassa sille, että pystyisin korvaamaan tietyt _kokonaiset_ sanat niin, ettei sanojen osia edes tutkittaisi?"

      Lisää sekä etsittävän ja tilalle vaihdettavan merkkijonon eteen ja perään välilyönti. Jotta homma toimisi myös sanan esiintyessä rivin alussa tai lopussa, pitää sinun lisätä rivin alkuun ja loppuunkin välilyönti.

      "Toinen ongelmani liittyy juurikin noihin sanoihin. Onko javassa mahdollista luoda tälle > word = word.replaceAll("koira", "dog"); jonkinlaista taulukkovastinetta? eli yhdessä taulukossa olisi isompi läjä sanoja/tietyt korvaavat sanat jokaiselle?"

      Joudut varmaan kirjoittamaan sellaisen itse. For-loopilla toteutettuna et tarvitse kovin montaa riviä, mutta tuollainen toteutus on sitten ihan hemmetin hidas jos sanoja on vähänkään enemmän. Kannattaisi tuo algoritmi miettiä ihan kokonaan uusiksi, eikä välttämättä edes käyttää replaceAll:ia.

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

    Luetuimmat keskustelut

    1. Voitasko leikkiä jotain tunnisteleikkiä?

      Tietäisi ketä täällä käy kaipaamassa.. kerro jotain mikä liittyy sinuun ja häneen eikä muut tiedä. Vastaan itsekin kohta
      Ikävä
      79
      1820
    2. Tietysti jokainen ansaitsee

      Hän varmasti ansaitsee vain parasta ja sopivinta tietenkin, suon sen onnen hänelle enemmän kuin mielelläni. Aika on nyt
      Ikävä
      18
      1699
    3. Millä voin

      Hyvittää kaiken?
      Ikävä
      16
      1524
    4. En voi sille mitään

      Tulen niin pahalle tuulelle tästä paikasta nykyisin. Nähnyt ja lukenut jo kaiken ja teidän juttu on samaa illasta toisee
      Ikävä
      12
      1204
    5. 50+ naiset kyl

      Lemottaa sillille mut myös niitte kaka lemottaa pahlle ku kävin naiste veskis nuuhiin
      Ikävä
      19
      1203
    6. Välitän sinusta mies

      Kaikki mitä yritin kertoa tänään ei mennyt ihan putkeen..Joka jäi jälkeenpäin ajateltuna suoraan sanottuna harmittaa aiv
      Työpaikkaromanssit
      6
      1192
    7. hieman diabetes...

      Kävin eilen kaverin kanssa keskusapteekissa kun on muutama kuukausi sitten tullut suomesta ja oli diabetes insuliinit lo
      Pattaya
      12
      1146
    8. Annetaanko olla vaan

      Siinä se, tavallaan kysymys ja toteamuskin. Niin turhaa, niin rikkovaa. On niin äärettömän tärkeä, ja rakas olo.. N
      Ikävä
      29
      1131
    9. Miten joku voi käyttää koko elämänsä

      siihen että nostelee täällä vanhoja ketjuja ja troIIaa niihin jotain linkkiä mitä kukaan ei avaa? Ihmisellä ei ole mitää
      Tunteet
      8
      1129
    10. Pakkoruotsi on leikkikieli, jota ei ole tarkoituskaan osata

      Pakkoruotsi on leikkikieli. Ennen leikkikieltä sanottiin siansaksaksi, sitten keksittiin tilalle pakkoruotsi. Pakkoruot
      Kielipolitiikka
      7
      1114
    Aihe