2010-07-27 12 views
1

J'ai une application simple qui permet à l'utilisateur d'appuyer sur un bouton qui affiche la liste des contacts. Ils sélectionnent le contact et l'application place ensuite le numéro de téléphone dans un contrôle de texte d'édition. Tout cela fonctionne comme un charme.Avec le contrôle android editText est-il un moyen simple d'afficher uniquement les numéros?

Cependant, je remarque que le numéro de téléphone récupéré a des marques de «ponctuation»: 123.456.7890 ou 123-456-7890 est retourné mot pour mot avec les points et les tirets inclus.

Existe-t-il un moyen simple de supprimer les entrées non numériques avant de les afficher de nouveau à l'utilisateur?

Répondre

0

Vous devriez pouvoir manipuler la chaîne en utilisant les fonctions Java String standard pour supprimer les non-nombres.

à savoir

myString.replaceAll("\D", ""); 

\ D est une expression régulière qui devrait correspondre à tout ce qui est pas un chiffre. Voir Pattern docs.

replaceAll remplacera toutes les instances de la regex avec tout ce que vous fournissez comme deuxième paramètre.