Android – comment remplacer une partie d’une chaîne par une autre chaîne?

J’ai des cordes avec des nombres et des mots anglais et je dois les traduire dans ma langue maternelle en les trouvant et en les remplaçant par une version localisée de ce mot. Savez-vous comment facilement remplacer les mots dans une chaîne?

Merci

Modifier:

J’ai essayé (une partie de la chaîne “to” devrait être remplacée par “xyz”):

ssortingng.replace("to", "xyz") 

Mais ça ne fonctionne pas…

Il fonctionne, mais il ne modifiera pas l’object appelant, mais renverra une nouvelle chaîne.
Il suffit donc de l’assigner à une nouvelle variable Ssortingng ou à elle-même:

 ssortingng = ssortingng.replace("to", "xyz"); 

ou

 Ssortingng newSsortingng = ssortingng.replace("to", "xyz"); 

Documents API

 public Ssortingng replace (CharSequence target, CharSequence replacement) 

Depuis: API Niveau 1

Copie cette chaîne en remplaçant les occurrences de la séquence cible spécifiée par une autre séquence. La chaîne est traitée du début à la fin.

Paramètres

  • target la séquence à remplacer.
  • replacement la séquence de remplacement.

Renvoie la chaîne résultante.
Lance une NullPointerException si target ou replacement est null.

 Ssortingng str = "to"; str.replace("to", "xyz"); 

Essayez-le 🙂

PEUT ÊTRE INTÉRESSANT POUR VOUS:

En java, les objects ssortingng sont immuables. Immuable signifie simplement non modifiable ou immuable.

Une fois l’object chaîne créé, ses données ou son état ne peuvent pas être modifiés, mais un nouvel object chaîne est créé.

Vous ne faites qu’une seule erreur.

utilisez la fonction replaceAll() là-bas.

par exemple

 Ssortingng str = "Hi"; Ssortingng str1 = "hello"; str.replaceAll( str, str1 ); 

rekaszeru

J’ai remarqué que vous avez commenté en 2011, mais je pensais que je devrais publier cette réponse de toute façon, au cas où quelqu’un aurait besoin de “remplacer la chaîne d’origine” et se heurterait à cette réponse.

Im utiliser un EditText comme exemple


// DONNER UN NOM À LA BOÎTE DE TEXTE CIBLE

  EditText textbox = (EditText) findViewById(R.id.your_textboxID); 

// CHAÎNE À REMPLACER

  Ssortingng oldText = "hello" Ssortingng newText = "Hi"; Ssortingng textBoxText = textbox.getText().toSsortingng(); 

// REMPLACE LES CORDES AVEC LES CORDES RETOURNÉES

 Ssortingng returnedSsortingng = textBoxText.replace( oldText, newText ); 

// UTILISEZ DES CORDES RETOURNÉES POUR REMPLACER DE NOUVELLES CHAÎNES À L’INTÉRIEUR DU TEXTBOX

 textbox.setText(returnedSsortingng); 

Ce n’est pas testé, mais c’est juste un exemple d’utilisation de la chaîne renvoyée pour remplacer la chaîne de disposition d’origine par setText ()!

Évidemment, cet exemple nécessite que vous ayez un EditText avec l’ID défini sur votre