Kertokaapa tyhmälle kuinka Javalla voisi tarkistaa merkkijonosta että onko kyseessä hyväksyttävä sähköpostiosoite. Tiedän, että se onnistuu vaikka yhdellä rivillä, mutta en vain osaa ;=). Ongelma ei siis ole se, että onko osoite olemassa, vaan se, olisiko se mahdollista.
Kiitos jo etukäteen!
Kiitos jo etukäteen!
Vastaukset 4
Vanhimmat
Yksinkertainen ja ehkä ei niin kovin luotettava tarkistusmetodi mutta ainakin saat selville onko merkkijonossa @-merkki:
if (merkkijono.indexOf("@") > -1)
{
// jne...
}
merkkijonolla tarkoitat varmaankin String luokkaa ?
String osoite = "";
Etsi siis apista luokka String:
http://java.sun.com/j2se/1.4.2/docs/api/
suora osoite:
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/String.html
Sieltä sitten etit sopivat metodit. Metodia kutsutaan tyyliin:
osoite.metodi()
Päteviä metodeja tuohon esim:
length()
lastIndexOf(int ch)
indexOf(String str, int fromIndex)
charAt(int index)
substring(int beginIndex, int endIndex)
Kokeiles sopivaa regexp:iä ja String-luokan matches-metodia. Jos regexp ei itseltä taivu niin googlettamalla löydät.
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html#matches(java.lang.String)
boolean onkoHyvaksyttavaEmail(string s) {
jos stringin_pituus < 6 return false;
int at = atmerkin_paikka_stringissä;
jos at