2010-04-18 5 views

Répondre

0

J'ai résolu en utilisant simplement string fonction matches

String str="mystring";

str.matches("[a-zA-Z][0-9]+");

3

Utilisez une regex. Cela devrait le faire en supposant que la première lettre peut être supérieure ou inférieure cas: problème

Pattern p = Pattern.compile("[a-zA-Z][0-9]+"); 

Matcher m = p.matcher("some text you want"); 
boolean isAlphaNum = m.matches(); 
+0

cela ne fonctionne pas, ne retourne vrai. Aucune suggestion? – rob

3

http://osdir.com/ml/Android-Developers/2009-11/msg02501.html semble comme un solution plus décente, il ne permet pas d'entrer les caractères qui ne sont pas acceptés.

code de lien:

InputFilter filter = new InputFilter() { 
    public CharSequence filter(CharSequence source, int start, int end, 
    Spanned dest, int dstart, int dend) { 
     for (int i = start; i < end; i++) { 
      if (!Character.isLetterOrDigit(source.charAt(i))) { 
       return ""; 
      } 
     } 
     return null; 
    } 
}; 

edit.setFilters(new InputFilter[]{filter}); 
Questions connexes