String.Replace Метод

Определение

Возвращает новую строку, в которой все вхождения указанного символа Юникода или String текущей строки заменяются другим указанным символом Юникода или String.

Перегрузки

Имя Описание
Replace(Char, Char)

Возвращает новую строку, в которой все вхождения указанного символа Юникода в этом экземпляре заменяются другим указанным символом Юникода.

Replace(String, String)

Возвращает новую строку, в которой все вхождения указанной строки в текущем экземпляре заменяются другой указанной строкой.

Replace(Rune, Rune)
Replace(String, String, StringComparison)

Возвращает новую строку, в которой все вхождения указанной строки в текущем экземпляре заменяются другой указанной строкой, используя предоставленный тип сравнения.

Replace(String, String, Boolean, CultureInfo)

Возвращает новую строку, в которой все вхождения указанной строки в текущем экземпляре заменяются другой указанной строкой с использованием предоставленного языка и региональных параметров и конфиденциальности регистра.

Replace(Char, Char)

Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs

Возвращает новую строку, в которой все вхождения указанного символа Юникода в этом экземпляре заменяются другим указанным символом Юникода.

public:
 System::String ^ Replace(char oldChar, char newChar);
public string Replace(char oldChar, char newChar);
member this.Replace : char * char -> string
Public Function Replace (oldChar As Char, newChar As Char) As String

Параметры

oldChar
Char

Символ Юникода, который необходимо заменить.

newChar
Char

Символ Юникода для замены всех вхождения oldChar.

Возвращаемое значение

Строка, эквивалентная этому экземпляру, за исключением того, что все экземпляры oldChar заменяются newChar. Если oldChar в текущем экземпляре не найдено, метод возвращает текущий экземпляр без изменений.

Примеры

В следующем примере создается список разделенных запятыми значений путем замены запятыми для пустых между рядом чисел.

string str = "1 2 3 4 5 6 7 8 9";
Console.WriteLine($"Original string: \"{str}\"");
Console.WriteLine($"CSV string:      \"{str.Replace(' ', ',')}\"");

// This example produces the following output:
// Original string: "1 2 3 4 5 6 7 8 9"
// CSV string:      "1,2,3,4,5,6,7,8,9"
let str = "1 2 3 4 5 6 7 8 9"
printfn $"Original string: \"{str}\""
printfn $"CSV string:      \"{str.Replace(' ', ',')}\""

// This example produces the following output:
// Original string: "1 2 3 4 5 6 7 8 9"
// CSV string:      "1,2,3,4,5,6,7,8,9"
Class stringReplace1
   Public Shared Sub Main()
      Dim str As [String] = "1 2 3 4 5 6 7 8 9"
      Console.WriteLine("Original string: ""{0}""", str)
      Console.WriteLine("CSV string:      ""{0}""", str.Replace(" "c, ","c))
   End Sub
End Class
' This example produces the following output:
' Original string: "1 2 3 4 5 6 7 8 9"
' CSV string:      "1,2,3,4,5,6,7,8,9"

Комментарии

Этот метод выполняет порядковый поиск (учитывает регистр и не учитывает язык и региональные параметры) для поиска oldChar.

Note

Этот метод не изменяет значение текущего экземпляра. Вместо этого возвращается новая строка, в которой заменяются oldCharвсе вхожденияnewChar.

Так как этот метод возвращает измененную строку, можно объединить последовательные вызовы Replace метода для выполнения нескольких замен в исходной строке. Вызовы методов выполняются слева направо. Это показывается в следующем примере.

string s = new('a', 3);
Console.WriteLine($"The initial string: '{s}'");
s = s.Replace('a', 'b').Replace('b', 'c').Replace('c', 'd');
Console.WriteLine($"The final string: '{s}'");

// The example displays the following output:
//       The initial string: 'aaa'
//       The final string: 'ddd'
let s = new string('a', 3)
printfn $"The initial string: '{s}'"
let s2 = s.Replace('a', 'b').Replace('b', 'c').Replace('c', 'd')
printfn $"The final string: '{s2}'"

// The example displays the following output:
//       The initial string: 'aaa'
//       The final string: 'ddd'
Module Example
   Public Sub Main()
      Dim s As New String("a"c, 3)
      Console.WriteLine("The initial string: '{0}'", s)
      s = s.Replace("a"c, "b"c).Replace("b"c, "c"c).Replace("c"c, "d"c)
      Console.WriteLine("The final string: '{0}'", s)
   End Sub
End Module
' The example displays the following output:
'       The initial string: 'aaa'
'       The final string: 'ddd'

См. также раздел

Применяется к

Replace(String, String)

Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs

Возвращает новую строку, в которой все вхождения указанной строки в текущем экземпляре заменяются другой указанной строкой.

public:
 System::String ^ Replace(System::String ^ oldValue, System::String ^ newValue);
public string Replace(string oldValue, string newValue);
public string Replace(string oldValue, string? newValue);
member this.Replace : string * string -> string
Public Function Replace (oldValue As String, newValue As String) As String

Параметры

oldValue
String

Строка, которая должна быть заменена.

newValue
String

Строка для замены всех вхождения oldValue.

Возвращаемое значение

Строка, эквивалентная текущей строке, за исключением того, что все экземпляры oldValue заменяются newValue. Если oldValue в текущем экземпляре не найдено, метод возвращает текущий экземпляр без изменений.

Исключения

oldValue равно null.

oldValue — пустая строка ("").

Примеры

В следующем примере показано, как использовать Replace метод для исправления ошибки орфографии.

string errString = "This docment uses 3 other docments to docment the docmentation";

Console.WriteLine($"The original string is:{Environment.NewLine}'{errString}'{Environment.NewLine}");

// Correct the spelling of "document".
string correctString = errString.Replace("docment", "document");

Console.WriteLine($"After correcting the string, the result is:{Environment.NewLine}'{correctString}'");

// This code example produces the following output:
//
// The original string is:
// 'This docment uses 3 other docments to docment the docmentation'
//
// After correcting the string, the result is:
// 'This document uses 3 other documents to document the documentation'
//
open System

let errString = "This docment uses 3 other docments to docment the docmentation"

printfn $"The original string is:{Environment.NewLine}'{errString}'{Environment.NewLine}"

// Correct the spelling of "document".

let correctString = errString.Replace("docment", "document")

printfn $"After correcting the string, the result is:{Environment.NewLine}'{correctString}'"

// This code example produces the following output:
//
// The original string is:
// 'This docment uses 3 other docments to docment the docmentation'
//
// After correcting the string, the result is:
// 'This document uses 3 other documents to document the documentation'
//
Public Class ReplaceTest
    
    Public Shared Sub Main()
        Dim errString As String = "This docment uses 3 other docments to docment the docmentation"
                
        Console.WriteLine("The original string is:{0}'{1}'{0}", Environment.NewLine, errString)

        ' Correct the spelling of "document".  
        Dim correctString As String = errString.Replace("docment", "document")
      
        Console.WriteLine("After correcting the string, the result is:{0}'{1}'", Environment.NewLine, correctString)
    End Sub
End Class
'
' This code example produces the following output:
'
' The original string is:
' 'This docment uses 3 other docments to docment the docmentation'
'
' After correcting the string, the result is:
' 'This document uses 3 other documents to document the documentation'
'

Комментарии

Если newValue это nullтак, все вхождения oldValue удаляются.

Note

Этот метод не изменяет значение текущего экземпляра. Вместо этого возвращается новая строка, в которой заменяются oldValueвсе вхожденияnewValue.

Этот метод выполняет порядковый поиск (учитывает регистр и не учитывает язык и региональные параметры) для поиска oldValue.

Так как этот метод возвращает измененную строку, можно объединить последовательные вызовы Replace метода для выполнения нескольких замен в исходной строке. Вызовы методов выполняются слева направо. Это показывается в следующем примере.

string s = "aaa";
Console.WriteLine($"The initial string: '{s}'");
s = s.Replace("a", "b").Replace("b", "c").Replace("c", "d");
Console.WriteLine($"The final string: '{s}'");

// The example displays the following output:
//       The initial string: 'aaa'
//       The final string: 'ddd'
let s = "aaa"
printfn $"The initial string: '{s}'"
let s2 = s.Replace("a", "b").Replace("b", "c").Replace("c", "d")
printfn $"The final string: '{s2}'"

// The example displays the following output:
//       The initial string: 'aaa'
//       The final string: 'ddd'
Module Example
   Public Sub Main()
      Dim s As String = "aaa"
      Console.WriteLine("The initial string: '{0}'", s)
      s = s.Replace("a", "b").Replace("b", "c").Replace("c", "d")
      Console.WriteLine("The final string: '{0}'", s)
   End Sub
End Module
' The example displays the following output:
'       The initial string: 'aaa'
'       The final string: 'ddd'

См. также раздел

Применяется к

Replace(Rune, Rune)

Исходный код:
String.Manipulation.cs
public:
 System::String ^ Replace(System::Text::Rune oldRune, System::Text::Rune newRune);
public string Replace(System.Text.Rune oldRune, System.Text.Rune newRune);
member this.Replace : System.Text.Rune * System.Text.Rune -> string
Public Function Replace (oldRune As Rune, newRune As Rune) As String

Параметры

oldRune
Rune
newRune
Rune

Возвращаемое значение

Применяется к

Replace(String, String, StringComparison)

Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs

Возвращает новую строку, в которой все вхождения указанной строки в текущем экземпляре заменяются другой указанной строкой, используя предоставленный тип сравнения.

public:
 System::String ^ Replace(System::String ^ oldValue, System::String ^ newValue, StringComparison comparisonType);
public string Replace(string oldValue, string? newValue, StringComparison comparisonType);
public string Replace(string oldValue, string newValue, StringComparison comparisonType);
member this.Replace : string * string * StringComparison -> string
Public Function Replace (oldValue As String, newValue As String, comparisonType As StringComparison) As String

Параметры

oldValue
String

Строка, которая должна быть заменена.

newValue
String

Строка для замены всех вхождения oldValue.

comparisonType
StringComparison

Одно из значений перечисления, определяющее oldValue способ поиска в этом экземпляре.

Возвращаемое значение

Строка, эквивалентная текущей строке, за исключением того, что все экземпляры oldValue заменяются newValue. Если oldValue в текущем экземпляре не найдено, метод возвращает текущий экземпляр без изменений.

Исключения

oldValue равно null.

oldValue — пустая строка ("").

Комментарии

Если newValue это nullтак, все вхождения oldValue удаляются.

Note

Этот метод не изменяет значение текущего экземпляра. Вместо этого возвращается новая строка, в которой заменяются oldValueвсе вхожденияnewValue.

Этот метод выполняет поиск для поиска oldValue с помощью языка и региональных параметров и конфиденциальности регистра, описанных в comparisonTypeразделе .

Так как этот метод возвращает измененную строку, можно объединить последовательные вызовы Replace метода для выполнения нескольких замен в исходной строке. Вызовы методов выполняются слева направо. Это показывается в следующем примере.

string s = "aaa";
Console.WriteLine($"The initial string: '{s}'");
s = s.Replace("a", "b").Replace("b", "c").Replace("c", "d");
Console.WriteLine($"The final string: '{s}'");

// The example displays the following output:
//       The initial string: 'aaa'
//       The final string: 'ddd'
let s = "aaa"
printfn $"The initial string: '{s}'"
let s2 = s.Replace("a", "b").Replace("b", "c").Replace("c", "d")
printfn $"The final string: '{s2}'"

// The example displays the following output:
//       The initial string: 'aaa'
//       The final string: 'ddd'
Module Example
   Public Sub Main()
      Dim s As String = "aaa"
      Console.WriteLine("The initial string: '{0}'", s)
      s = s.Replace("a", "b").Replace("b", "c").Replace("c", "d")
      Console.WriteLine("The final string: '{0}'", s)
   End Sub
End Module
' The example displays the following output:
'       The initial string: 'aaa'
'       The final string: 'ddd'

Применяется к

Replace(String, String, Boolean, CultureInfo)

Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs
Исходный код:
String.Manipulation.cs

Возвращает новую строку, в которой все вхождения указанной строки в текущем экземпляре заменяются другой указанной строкой с использованием предоставленного языка и региональных параметров и конфиденциальности регистра.

public:
 System::String ^ Replace(System::String ^ oldValue, System::String ^ newValue, bool ignoreCase, System::Globalization::CultureInfo ^ culture);
public string Replace(string oldValue, string? newValue, bool ignoreCase, System.Globalization.CultureInfo? culture);
public string Replace(string oldValue, string newValue, bool ignoreCase, System.Globalization.CultureInfo culture);
member this.Replace : string * string * bool * System.Globalization.CultureInfo -> string
Public Function Replace (oldValue As String, newValue As String, ignoreCase As Boolean, culture As CultureInfo) As String

Параметры

oldValue
String

Строка, которая должна быть заменена.

newValue
String

Строка для замены всех вхождения oldValue.

ignoreCase
Boolean

true Значение , чтобы игнорировать регистр при сравнении; false Иначе.

culture
CultureInfo

Язык и региональные параметры, используемые при сравнении. Если culture является null, используется текущая культура.

Возвращаемое значение

Строка, эквивалентная текущей строке, за исключением того, что все экземпляры oldValue заменяются newValue. Если oldValue в текущем экземпляре не найдено, метод возвращает текущий экземпляр без изменений.

Исключения

oldValue равно null.

oldValue — пустая строка ("").

Комментарии

Если newValue это nullтак, все вхождения oldValue удаляются.

Note

Этот метод не изменяет значение текущего экземпляра. Вместо этого возвращается новая строка, в которой заменяются oldValueвсе вхожденияnewValue.

Этот метод выполняет поиск для поиска oldValue с использованием предоставленной и culture конфиденциальности регистраignoreCase.

Так как этот метод возвращает измененную строку, можно объединить последовательные вызовы Replace метода для выполнения нескольких замен в исходной строке. Вызовы методов выполняются слева направо. Это показывается в следующем примере.

string s = "aaa";
Console.WriteLine($"The initial string: '{s}'");
s = s.Replace("a", "b").Replace("b", "c").Replace("c", "d");
Console.WriteLine($"The final string: '{s}'");

// The example displays the following output:
//       The initial string: 'aaa'
//       The final string: 'ddd'
let s = "aaa"
printfn $"The initial string: '{s}'"
let s2 = s.Replace("a", "b").Replace("b", "c").Replace("c", "d")
printfn $"The final string: '{s2}'"

// The example displays the following output:
//       The initial string: 'aaa'
//       The final string: 'ddd'
Module Example
   Public Sub Main()
      Dim s As String = "aaa"
      Console.WriteLine("The initial string: '{0}'", s)
      s = s.Replace("a", "b").Replace("b", "c").Replace("c", "d")
      Console.WriteLine("The final string: '{0}'", s)
   End Sub
End Module
' The example displays the following output:
'       The initial string: 'aaa'
'       The final string: 'ddd'

Применяется к