IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Entrée/Sortie Java Discussion :

string : fonction replace


Sujet :

Entrée/Sortie Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 181
    Points : 70
    Points
    70
    Par défaut string : fonction replace
    Bonjour,
    Dans la documentation java les fonctions suivantes sont disponibles : replace, replaceAll, replaceFirst.

    Si je souhaite modifier la dernière occurence il n'y a pas de solutions?

    Merci d'avance

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    572
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Février 2007
    Messages : 572
    Points : 675
    Points
    675
    Par défaut
    Tu as toujours java.util.regex.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 181
    Points : 70
    Points
    70
    Par défaut
    je vais paraitre peut etre stupide mais je ne vois pas bien comment utiliser ceci avec mon problème

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2007
    Messages
    572
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Février 2007
    Messages : 572
    Points : 675
    Points
    675
    Par défaut
    En fait toutes les methodes replace sont des raccourcis à l'utilisation de Pattern et Matcher.

    Pattern et Matcher ont des interfaces plus riches, qui devrait te permettre de faire tout ce que tu veux.

    Par exemple, sur Matcher, tu as la methode find(int start), qui permet de recherche un pattern à une position donnée.
    J'en conviens, l'utilisation de Pattern et Matcher n'est pas simple, et demande quelques heures d'apprentissage.

    Tu peux aussi regarder du cote de la classe Scanner, qui permet de chercher des pattern dans une chaine de caracteres, et fait avancer le pointeur de recherche (avec les methodes Scanner.next() et Scanner.hasNext()). Il faudrait alors boucler pour trouver le dernier element. C'est moins compliqué.

    En tout cas, je ne connais pas de methode tout faite pour ton cas.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 181
    Points : 70
    Points
    70
    Par défaut
    je pense que je vais regarder de plus près la classe scanner, cela me permettra de perdre moins de temps.
    Il faut juste que j'arrive à bien identifier quelle chaine prendre en entrée et comment traiter le remplacement

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 181
    Points : 70
    Points
    70
    Par défaut
    j'ai réalisé ce bout de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Scanner scan = new Scanner (ligneLue);
     
    while (scan.hasNext(chaineCherchee))
    {
    scan.next();
    }
    Ce qui me permet de balayer la chaine mais je ne sais pas trop quand placer le replace aurais tu une idée?

  7. #7
    Membre actif

    Étudiant
    Inscrit en
    Mai 2006
    Messages
    200
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2006
    Messages : 200
    Points : 276
    Points
    276
    Par défaut
    Bonjour,

    Tu peux passer par la classe StringBuffer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    String chaine = "bonjour coucou bonjour salut";
    String aRemplacer = "bonjour"; // chaine a remplacer
     
    int i = chaine.lastIndexOf(aRemplacer); // indice de la dernière occurence
    int lg = aRemplacer.length(); // taille de la chaine a remplacer
     
    StringBuffer stringBuffer = new StringBuffer(chaine);
    stringBuffer.delete(i, i+lg); // suppression de la dernière occurence
    stringBuffer.insert(i, "hello"); // insertion de la chaine de remplacement
    System.out.println(stringBuffer.toString());

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    181
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 181
    Points : 70
    Points
    70
    Par défaut
    en effet c'est ce qu'il me fallait
    merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ODBC] Fonction Replace en ODBC
    Par Alexandre T dans le forum Access
    Réponses: 4
    Dernier message: 10/01/2007, 11h02
  2. fonction replace et variable de type string
    Par aA189 dans le forum Access
    Réponses: 6
    Dernier message: 11/08/2006, 17h38
  3. PB avec la fonction replace
    Par Techman128 dans le forum C++
    Réponses: 6
    Dernier message: 24/02/2005, 11h39
  4. [String] Fonction de recherche de caractères numériques
    Par david71 dans le forum Général Java
    Réponses: 10
    Dernier message: 16/02/2005, 12h05
  5. Fonction replace
    Par PrinceMaster77 dans le forum ASP
    Réponses: 5
    Dernier message: 10/06/2004, 12h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo