CodeGym /Java Blog /Random-IT /Metodo Java String replace()
John Squirrels
Livello 41
San Francisco

Metodo Java String replace()

Pubblicato nel gruppo Random-IT

Quali sono i metodi replace() comuni della classe String in Java?

La classe String fornisce quattro diversi tipi di metodi replace() in Java. Ciascuno dei metodi affronta un caso d'uso specifico. I loro nomi sono elencati di seguito:
  1. sostituisci(carattere,carattere)
  2. sostituisci(Stringa, Stringa)
  3. sostituisciTutto(Stringa, Stringa)
  4. sostituisciPrimo(Stringa, Stringa)
Andando avanti con il post, vedremo come funziona ogni metodo. Esamineremo anche la necessità di utilizzare quanto sopra in diversi casi d'uso.

Metodo Java String replace()

Il metodo Java String replace() viene utilizzato per sostituire un carattere specificato con il carattere dato entrambi passati come parametri. Questo metodo è adatto per sostituire qualsiasi carattere in una stringa con un altro carattere a tua scelta.

Intestazione del metodo


public String replace(char oldCharacter, char newCharacter)

Parametri del metodo

Il metodo accetta due parametri o argomenti di tipo 'char'.
  • char oldCharacter contiene il carattere da sostituire.

  • char newCharacter contiene il carattere che verrà utilizzato al posto di oldCharacter.

Tipo di ritorno

Il metodo String replace restituisce la stringa aggiornata dopo aver sostituito il carattere desiderato.

Esempio

Diamo un'occhiata a diversi semplici esempi per capire come funziona questo metodo.

public class Driver {

	public static void main(String[] args) {

	      String myString = "An apple a day, keeps the doctor away!";
		System.out.println("Original Sentence: \t\t\t" + myString);

		// Example 1 using String replace(char, char)
		char oldCharacter = 'a'; // replacing character
		char newCharacter = 'A'; // character to be replaced
            String updatedString = myString.replace(oldCharacter, newCharacter);    
		System.out.println("After replacing '" + oldCharacter + "' with '" + 
		// 'a' is replaced and not with 'A' as the method is case sensitive
		newCharacter + "': \t\t" + updatedString);
		
		// Example 2 using String replace(String, String)
		String oldString = "apple";
		String newString = "orange";
		// using the method String replace		
            String updatedString1 = myString.replace(oldString, newString); 
            System.out.println("Replacing '" + oldString + "' with '" + 
        		newString + "': \t" + updatedString1 + "\n");
	}
}

Produzione

Frase Originale: Una mela al giorno toglie il medico di torno! Dopo aver sostituito 'a' con 'A': Una mela al giorno, toglie il medico di torno! Sostituire 'mela' con 'arancia': un'arancia al giorno toglie il medico di torno!
Nota: ti consigliamo di familiarizzare con le espressioni regolari , ovvero le espressioni regolari, prima di andare avanti.

Metodo Java String replaceAll()

Il metodo Java String replaceAll() sostituisce OGNI singola occorrenza di un'espressione regolare passata come parametro con la String desiderata . Ciò significa che ogni copia di regex viene aggiornata dalla stringa di sostituzione.

Intestazione del metodo


public String replaceAll(String regularExpression, String replacementStr)

Parametri del metodo

Questo metodo accetta due argomenti di tipo 'Stringa'.
  • String regularExpression contiene la regex (pattern) da sostituire.

  • String replacementStr è la stringa che verrà utilizzata al posto della regex.

Tipo di ritorno

Il metodo restituisce una nuova stringa dopo aver sostituito tutte le occorrenze della regex.

Esempio

Questo metodo è comunemente usato per aggiornare enormi record di dati. Per una comprensione più approfondita, diamo un'occhiata a diversi esempi del metodo replaceAll() .

public class Driver1 {

	public static void main(String[] args) {

		String myString = "Mastering a programming language begins with great logic building!";
		System.out.println("Original Sentence: \t\t\t" + myString);

		String regex = "[\sa]"; // This regex is used to remove all spaces and a(s) in the string
		String replacementStr = "";
		// using the method String replaceAll(); to remove ALL spaces
		System.out.println("After replacing \"" + regex + "\" with \"" + replacementStr + "\": \t"
				+ myString.replaceAll(regex, replacementStr) + "\n");
	}
}

Produzione

Frase originale: la padronanza di un linguaggio di programmazione inizia con una grande costruzione logica! Dopo aver sostituito "[a]" con "": Msteringprogrmminglngugebeginswithgretlogicbuilding!

Metodo Java String replaceFirst()

Il metodo Java String replaceFirst() sostituisce SOLO la PRIMA occorrenza della regex passata a questo metodo.

Intestazione del metodo


public String replaceFirst(String regularExpression, String replacementStr)

Parametri del metodo

Questo metodo accetta due argomenti di tipo 'Stringa'.
  • String regularExpression contiene la regex (pattern) da sostituire.

  • String replacementStr è la stringa che verrà utilizzata al posto della regex.

Tipo di ritorno

Il metodo restituisce una nuova stringa dopo aver sostituito solo la PRIMA occorrenza della regex.

Esempio

Questo metodo può essere utilizzato quando si desidera aggiornare solo il primo record trovato dell'argomento corrispondente. Esploriamo come funziona nell'esempio qui sotto.

public class Driver2 {
	
	public static void main(String[] args) {

		String myString = "Good Morning. You wonders of Nature. Today is a great day to be happy.";
		System.out.println("Original Sentence: \t\t" + myString);

		String regex = "\\."; // regex to update period / full stop
		String replacementStr = "!";
		// using the method String replaceFirst();
		// to remove first period(.) with exclamation(!) mark
		System.out.println("After replacing '" + regex + "' with '" + replacementStr + "': \t"
				+ myString.replaceFirst(regex, replacementStr));
	}
}

Produzione

Frase originale: Buongiorno. Voi meraviglie della Natura. Oggi è un grande giorno per essere felici. Dopo aver sostituito '\.' con '!': Buongiorno! Voi meraviglie della Natura. Oggi è un grande giorno per essere felici.

Conclusione

Quindi quelle erano alcune nozioni di base sull'utilizzo dei metodi replace() in Java. Come sempre, consigliamo vivamente di imparare con la pratica. Alla prossima volta, continua a imparare e continua a crescere!
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION