kuinka pystyn korvaamaan jonkin StringBuffer sanan tiettyjä kirjaimia. esim sanasta Työpaikka, tuon ö:n o:lla tai jos on isoja ääkkösiä ni ne isoilla aakkosilla ja niin pois päin? eli siis mistä tahansa sanasta isot ja pienet ääkköset pois ja pienet tai isot aakkoset tilalle?
Merkin Korvaus
joopastajoo
2989
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 2
Vanhimmat
Muuta StringBuffer Stringiksi (toString()) ja käytä String-luokassa valmiiksi olevia metodeja replace, replaceAll, toLowerCase jne.
http://java.sun.com/javase/6/docs/api/java/lang/String.html
Alla yksi mahdollinen ratkaisu, joka mahdollistaa myös kirjainten ristiinvaihdon.
--- ESIMERKKI ALKAA ---
public class Esimerkki {
public static StringBuffer korvaaMerkkejä(
StringBuffer jono, String korvaavat, String korvattavat)
{
for (int i = 0, paikka; i < jono.length(); i )
if ((paikka = korvattavat.indexOf(jono.charAt(i))) >= 0)
jono.setCharAt(i, korvaavat.charAt(paikka));
return jono;
}
public static void main (String[] args) {
StringBuffer jono = new StringBuffer("Tämä on testi ÖÄ");
System.out.println(korvaaMerkkejä(jono, "aAoOAa", "äÄöÖÅå"));
}
}
--- ESIMERKKI LOPPUU ---