În C#, A inlocui() metoda este o metodă cu șiruri. Această metodă este utilizată pentru a înlocui toate caracterele Unicode specificate sau șirul specificat din obiectul șir curent și returnează un șir nou modificat. Această metodă poate fi supraîncărcată prin transmiterea de argumente.
Sintaxă:
public string Replace(char Oldchar, char Newchar) or public string Replace(string Oldvalue, string Newvalue)>
Explicaţie:
Prima metodă ia doi parametri Oldchar și Newchar, unde Oldchar este caracterul Unicode care trebuie înlocuit și Newchar este caracterul care înlocuiește toate aparițiile lui OldChar.
A doua metodă ia, de asemenea, doi parametri Oldvalue și Newvalue, unde Oldvalue este șirul care trebuie înlocuit și Newvalue este un șir pentru a înlocui toate aparițiile Oldvalue. Valoarea tipului de returnare a ambelor metode este System.String .
Excepții:
- ArgumentNullException: Dacă OldValue sau Oldchar ambele sunt nule. ArgumentException Dacă OldValue sau Oldchar este șirul gol ().
Mai jos sunt programele pentru a demonstra metodele de mai sus:
- Exemplul 1: Program pentru a demonstra șir public Înlocuire(char Oldchar, char Newchar) metodă. Toate aparițiile unui caracter specificat sunt înlocuite cu un alt caracter specificat. Dacă oldChar nu este găsit în obiectul șir curent, atunci șirul rămâne neschimbat.
Input : str = 'GeeksForGeeks' str.Replace('s', 'G'); Output: GeekGForGeekG Input : str = 'GeeksForGeeks' str.Replace('e', ' '); Output: G ksForG ks> modele de software java
// C# program to illustrate the Replace()> // Method with character parameter> using> System;> > class> Geeks {> > >// Main Method> >public> static> void> Main()> >{> > >// string> >String str =>'Geeks For Geeks'>;> > >Console.WriteLine(>'OldString : '> + str);> > >// replace the character 's' with 'G'> >Console.WriteLine(>'NewString: '> + str.Replace(>'s'>,>'G'>));> > >// oldString will remain unchanged> >// its return the modified string> >Console.WriteLine(>'
OldString: '> + str);> > >// replace the character 'e' with space ' '> >Console.WriteLine(>'NewString: '> + str.Replace(>'e'>,>' '>));> >}> }> |
bourne din nou coajă
>
>Ieșire:
OldString : Geeks For Geeks NewString: GeekG For GeekG OldString: Geeks For Geeks NewString: G ks For G ks>Exemplul 2: Program pentru a demonstra șir public Înlocuire (șir valoare veche, șir valoare nouă) metodă. Toate aparițiile unui șir specificat în instanța curentă de șir sunt înlocuite cu un alt șir specificat. Dacă Oldvalue nu este găsită în șirul curent, atunci șirul rămâne neschimbat.
Input: str = 'Geeks For Geeks' str.Replace('Geeks', '---'); Output: --- For --- Input: str = 'Geeks For Geeks' str.Replace('For', 'GFG'); Output: Geeks GFG Geeks>
tipuri de date primitive în java
// C# program to illustrate the Replace> // Method with string parameter> using> System;> > class> Geeks {> > >// Main Method> >public> static> void> Main()> >{> > >// define string> >String str =>'Geeks For Geeks'>;> > >Console.WriteLine(>'OldString : '> + str);> > >// replace the string 'Geeks' with '---'> >// in string 'Geeks comes two time so replace two times> >Console.WriteLine(>'NewString: '> + str.Replace(>'Geeks'>,>'---'>));> > >// oldString will remain unchanged> >// its return the modified string> >Console.WriteLine(>'
OldString: '> + str);> > >// replace the string 'For' with 'GFG'> >Console.WriteLine(>'NewString: '> + str.Replace(>'For'>,>'GFG'>));> >}> }> |
>
>Ieșire:
sortare selecție în java
OldString : Geeks For Geeks NewString: --- For --- OldString: Geeks For Geeks NewString: Geeks GFG Geeks>
Pentru a efectua mai multe operații de înlocuire pe șir (lanțul de înlocuire):
Metoda Replace() de mai sus returnează șirul modificat, așa că acum putem înlănțui apeluri succesive la metoda Replace pentru a efectua mai multe înlocuiri pe șir. Apelurile de metodă sunt executate de la stânga la dreapta.
În exemplul de mai jos, pentru șirul dat XXXXX, primul X va fi înlocuit cu Y și apoi Y va fi înlocuit cu Z și, în final, Z va fi înlocuit cu A.
Exemplu:
dacă prin rudyard kipling explicație rând cu rând
// C# program to demonstrate the> // multiple replacements calls> using> System;> > public> class> Geeks{> > >// Main Method> >public> static> void> Main()> >{> >String str =>'XXXXX'>;> >Console.WriteLine(>'Old String: '> + str);> > >// chain together> >str = str.Replace(>'X'>,>'Y'>).Replace(>'Y'>,>'Z'>).Replace(>'Z'>,>'A'>);> >Console.WriteLine(>'New string: '> + str);> >}> }> |
>
>Ieșire:
Old String: XXXXX New string: AAAAA>
Puncte importante de reținut:
- Metoda Replace() nu modifică valoarea instanței curente. În schimb, returnează un șir nou în care toate aparițiile Oldvalue sunt înlocuite cu Newvalue, în mod similar oldchar sunt înlocuite cu Newchar.
- Efectuează o căutare sensibilă la majuscule pentru a găsi OldValue sau Oldchar. Dacă Newvalue este nulă, toate aparițiile lui Oldvalue sunt eliminate.
Referinte:
- https://msdn.microsoft.com/en-us/library/czx8s9ts(v=vs.110).aspx
- https://msdn.microsoft.com/en-us/library/fk49wtc1(v=vs.110).aspx