String.Replace Метод

Определение

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

Перегрузки

Replace(Char, Char)

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

Replace(String, String)

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

Replace(String, String, StringComparison)

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

Replace(String, String, Boolean, CultureInfo)

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

Replace(Char, Char)

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

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.

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

String

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

Примеры

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

using namespace System;
int main()
{
   String^ str = "1 2 3 4 5 6 7 8 9";
   Console::WriteLine( "Original string: \"{0}\"", str );
   Console::WriteLine( "CSV string:      \"{0}\"", 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"
//
String str = "1 2 3 4 5 6 7 8 9";
Console.WriteLine("Original string: \"{0}\"", str);
Console.WriteLine("CSV string:      \"{0}\"", 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 .

Примечание

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

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

String s = new String('a', 3);
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);

// 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)

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

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.

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

String

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

Исключения

oldValue имеет значение null.

oldValue является пустой строкой ("").

Примеры

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

using namespace System;
int main()
{
   String^ errString = "This docment uses 3 other docments to docment the docmentation";
   Console::WriteLine( "The original string is:\n'{0}'\n", errString );

   // Correct the spelling of S"document".
   String^ correctString = errString->Replace( "docment", "document" );
   Console::WriteLine( "After correcting the string, the result is:\n'{0}'", 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'
//
string errString = "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".

string correctString = errString.Replace("docment", "document");

Console.WriteLine("After correcting the string, the result is:{0}'{1}'",
        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 удаляются.

Примечание

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

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

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

String s = "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);

// 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, StringComparison)

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

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 в пределах экземпляра.

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

String

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

Исключения

oldValue имеет значение null.

oldValue является пустой строкой ("").

Комментарии

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

Примечание

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

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

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

String s = "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);

// 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)

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

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, используется текущий язык и региональные параметры.

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

String

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

Исключения

oldValue имеет значение null.

oldValue является пустой строкой ("").

Комментарии

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

Примечание

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

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

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

String s = "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);

// 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'

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