Java suppression lettres dans String

JeanJean -  
 zazzou -
Bonjour,

J'ai une String (en java) et j'aimerai retirer de cette String tous les caractères qui ne sont pas des chiffres.

ex: String_de_Départ = "12zer45aaz43" --> String_darrive = "124543"

merci de votre aide
Configuration: Windows XP
Firefox 1.5.0.12

7 réponses

  1. Utilisateur anonyme
     
    Voilà une solution :
    package test.regex;
    
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    
    public class ExpReg {
    	public static void main(String[] args) {
    		Pattern p = Pattern.compile("[0-9]*");
    		Matcher m = p.matcher("12zer45aaz43");
    		StringBuffer sb = new StringBuffer();
    		while (m.find()) {
    			String texte = m.group();
    			if (!texte.equals(""))
    				sb.append(texte);
    		}
    		System.out.println(sb.toString());
    	}
    }
    Bonne continuation ;-)
    3
  2. velderama Messages postés 203 Statut Membre 10
     
    par contre declare tes variables avant le "for"(c'est plus propre...) j'ai pas eu le temps de le faire ! :)
    char c;
    int castC ;
    string motfinal;
    for(int i=0 ; i<string_depart.length;i++){
    c= string_depart.chartAt(i);
    castC =(int)c;//on recupere son code ascii 
    ...
    
    3
  3. JeanJean
     
    Merci velderama ta méthode marche bien,
    dsl =[Cvrd]=Tassin je n'ai pas testé la tienne
    2
    1. velderama Messages postés 203 Statut Membre 10
       
      Au plaisir... ;)
      0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. Utilisateur anonyme
     
    La solution de velderama est correcte sauf si la table ASCII change de code un jour... A bon entendeur...

    (PS : N'oublie pas de passer ton post en "Résolu")
    2
  6. velderama Messages postés 203 Statut Membre 10
     
    Essaie ceci
    string motfinal;
    for(int i=0 ; i<string_depart.length;i++){
    char c= string_depart.chartAt(i);
    int castC =(int)c;//on recupere son code ascii 
    if(castC<=057 && castC>=48)//le code ascii des entiers 0 a 9
    {motfinal = motfinal+c;//ajout du caractere dans la chaine
    }
    }


    un lien pour le code ascii des caracteres http://cosmos2000.chez.com/Nombres/ASCII.html
    Par contre j'ai pas tester car ca fait longtemps que je ne fais plus de java mais c'est dans cette voie la!

    Bonne chance
    1