Moi aussi je suis débutante, alors j'ai cherché et j'ai trouvé ca :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
| package exos.pour.entrainement;
public class HelloWorld {
//Extraire le nombre de la chaine
public static String extraireNbre (final String s1)
{
StringBuilder sb2 = new StringBuilder();
boolean nbrTrouve = false;
for (char nbr : s1.toCharArray())
{
if (Character.isDigit(nbr))
{
sb2.append(nbr);
nbrTrouve = true;
} else if (nbrTrouve) {break;}
}
return sb2.toString();
}
//concaténer un String
public static String concatNbre (int nb, String str)
{
for (int i = 0; i<nb; i++)
{
System.out.print(str);
}
return str;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
String s = "a4bc";
StringBuilder sb = new StringBuilder(s);
//extraire le nombre
String s1 = extraireNbre (s);
System.out.println(s1);
//rechercher la position du 4
int position = s.indexOf(s1);
System.out.println(position);
//"transformer le String 4 en nombre
int nbre = Integer.parseInt(s1);
System.out.println(nbre);
//rechercher le char à concaténer qui se trouve avant le nombre
char c = s.charAt(position-1);
System.out.println(c);
String s2 = Character.toString(c); //"transformer le char en string pour pouvoir le concaténer après avec ma fonction concatNbre
String s3 = concatNbre(nbre-1, s2); //j'ai enlevé 1 car sinon ca faisait 5 a au lieu de 4
//remplacer les 2 premiers char par la chaine concaténée
sb.replace(position-1,position+1, s3);
System.out.println(sb);
}
} |
ce qui donne : "aaaabc". J'ai pas cherché plus, j'ai pas cherché à modifier la chaine ni rien, mais je te laisse tester. Etant débutante, j'ai pas cherché à savoir si ce code prend beaucoup de place ni rien, mais j'ai juste essayé de comprendre le fonctionnement, car je ne m'y connais pas trop ^^
Pour la fonction extraire nombre je l'ai trouvé sur internet et j'ai essayé d'en comprendre le fonctionnement. Je t'invite à faire de même en testant plusieurs trucs.
Je sais pas du tout si j'ai bon, mais voilà je me suis amusée à m'entrainer et surtout apprendre comment ca fonctionne tout ca.
Partager