String.Replace 方法

定义

返回一个新字符串,其中已将当前字符串中的指定 Unicode 字符或 String 的所有匹配项替换为其他指定的 Unicode 字符或 StringReturns a new string in which all occurrences of a specified Unicode character or String in the current string are replaced with another specified Unicode character or String.

重载

Replace(String, String, Boolean, CultureInfo)

返回一个新字符串,其中当前实例中出现的所有指定字符串都使用提供的区域性和区分大小写属性替换为另一个指定的字符串。Returns a new string in which all occurrences of a specified string in the current instance are replaced with another specified string, using the provided culture and case sensitivity.

Replace(Char, Char)

返回一个新字符串,其中此实例中出现的所有指定 Unicode 字符都替换为另一个指定的 Unicode 字符。Returns a new string in which all occurrences of a specified Unicode character in this instance are replaced with another specified Unicode character.

Replace(String, String)

返回一个新字符串,其中当前实例中出现的所有指定字符串都替换为另一个指定的字符串。Returns a new string in which all occurrences of a specified string in the current instance are replaced with another specified string.

Replace(String, String, StringComparison)

返回一个新字符串,其中当前实例中出现的所有指定字符串都使用提供的比较类型替换为另一个指定的字符串。Returns a new string in which all occurrences of a specified string in the current instance are replaced with another specified string, using the provided comparison type.

Replace(String, String, Boolean, CultureInfo)

返回一个新字符串,其中当前实例中出现的所有指定字符串都使用提供的区域性和区分大小写属性替换为另一个指定的字符串。Returns a new string in which all occurrences of a specified string in the current instance are replaced with another specified string, using the provided culture and case sensitivity.

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

要替换的字符串。The string to be replaced.

newValue
String

要替换 oldValue 的所有匹配项的字符串。The string to replace all occurrences of oldValue.

ignoreCase
Boolean

在比较时忽略大小写则为 true;否则为 falsetrue to ignore casing when comparing; false otherwise.

culture
CultureInfo

比较时要使用的区域性。The culture to use when comparing.

返回

等效于当前字符串(除了 oldValue 的所有实例都已替换为 newValue 外)的字符串。A string that is equivalent to the current string except that all instances of oldValue are replaced with newValue. 如果在当前实例中找不到 oldValue,此方法返回未更改的当前实例。If oldValue is not found in the current instance, the method returns the current instance unchanged.

异常

oldValuenulloldValue is null.

oldValue 为空字符串 ("")。oldValue is the empty string ("").

注解

如果 null``newValue,则将删除 oldValue 的所有匹配项。If newValue is null, all occurrences of oldValue are removed.

备注

此方法不会修改当前实例的值。This method does not modify the value of the current instance. 相反,它会返回一个新字符串,其中 oldValue 的所有匹配项都将替换为 newValueInstead, it returns a new string in which all occurrences of oldValue are replaced by newValue.

此方法使用提供的 cultureignoreCase 区分大小写来执行搜索以查找 oldValueThis method performs a search to find oldValue using the provided culture and ignoreCase case sensitivity.

由于此方法返回修改后的字符串,因此可以将对 Replace 方法的连续调用链接在一起,以便对原始字符串执行多次替换。Because this method returns the modified string, you can chain together successive calls to the Replace method to perform multiple replacements on the original string. 方法调用从左至右执行。Method calls are executed from left to right. 下面的示例进行了这方面的演示。The following example provides an illustration.

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(Char, Char)

返回一个新字符串,其中此实例中出现的所有指定 Unicode 字符都替换为另一个指定的 Unicode 字符。Returns a new string in which all occurrences of a specified Unicode character in this instance are replaced with another specified Unicode character.

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

要替换的 Unicode 字符。The Unicode character to be replaced.

newChar
Char

要替换出现的所有 oldChar 的 Unicode 字符。The Unicode character to replace all occurrences of oldChar.

返回

等效于此实例(除了 oldChar 的所有实例都已替换为 newChar 外)的字符串。A string that is equivalent to this instance except that all instances of oldChar are replaced with newChar. 如果在当前实例中找不到 oldChar,此方法返回未更改的当前实例。If oldChar is not found in the current instance, the method returns the current instance unchanged.

示例

下面的示例通过用逗号替换一系列数字之间的空格来创建逗号分隔值列表。The following example creates a comma separated value list by substituting commas for the blanks between a series of numbers.

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"

注解

此方法执行序号(区分大小写和不区分区域性)搜索以查找 oldCharThis method performs an ordinal (case-sensitive and culture-insensitive) search to find oldChar.

备注

此方法不会修改当前实例的值。This method does not modify the value of the current instance. 相反,它会返回一个新字符串,其中 oldChar 的所有匹配项都将替换为 newCharInstead, it returns a new string in which all occurrences of oldChar are replaced by newChar.

由于此方法返回修改后的字符串,因此可以将对 Replace 方法的连续调用链接在一起,以便对原始字符串执行多次替换。Because this method returns the modified string, you can chain together successive calls to the Replace method to perform multiple replacements on the original string. 方法调用从左至右执行。Method calls are executed from left to right. 下面的示例进行了这方面的演示。The following example provides an illustration.

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)

返回一个新字符串,其中当前实例中出现的所有指定字符串都替换为另一个指定的字符串。Returns a new string in which all occurrences of a specified string in the current instance are replaced with another specified string.

public:
 System::String ^ Replace(System::String ^ oldValue, System::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

要替换的字符串。The string to be replaced.

newValue
String

要替换 oldValue 的所有匹配项的字符串。The string to replace all occurrences of oldValue.

返回

等效于当前字符串(除了 oldValue 的所有实例都已替换为 newValue 外)的字符串。A string that is equivalent to the current string except that all instances of oldValue are replaced with newValue. 如果在当前实例中找不到 oldValue,此方法返回未更改的当前实例。If oldValue is not found in the current instance, the method returns the current instance unchanged.

异常

oldValuenulloldValue is null.

oldValue 为空字符串 ("")。oldValue is the empty string ("").

示例

下面的示例演示如何使用 Replace 方法来更正拼写错误。The following example demonstrates how you can use the Replace method to correct a spelling error.

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

注解

如果 null``newValue,则将删除 oldValue 的所有匹配项。If newValue is null, all occurrences of oldValue are removed.

备注

此方法不会修改当前实例的值。This method does not modify the value of the current instance. 相反,它会返回一个新字符串,其中 oldValue 的所有匹配项都将替换为 newValueInstead, it returns a new string in which all occurrences of oldValue are replaced by newValue.

此方法执行序号(区分大小写和不区分区域性)搜索以查找 oldValueThis method performs an ordinal (case-sensitive and culture-insensitive) search to find oldValue.

由于此方法返回修改后的字符串,因此可以将对 Replace 方法的连续调用链接在一起,以便对原始字符串执行多次替换。Because this method returns the modified string, you can chain together successive calls to the Replace method to perform multiple replacements on the original string. 方法调用从左至右执行。Method calls are executed from left to right. 下面的示例进行了这方面的演示。The following example provides an illustration.

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)

返回一个新字符串,其中当前实例中出现的所有指定字符串都使用提供的比较类型替换为另一个指定的字符串。Returns a new string in which all occurrences of a specified string in the current instance are replaced with another specified string, using the provided comparison type.

public:
 System::String ^ Replace(System::String ^ oldValue, System::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

要替换的字符串。The string to be replaced.

newValue
String

要替换 oldValue 的所有匹配项的字符串。The string to replace all occurrences of oldValue.

comparisonType
StringComparison

枚举值之一,用于确定在此实例内搜索 oldValue 的方法。One of the enumeration values that determines how oldValue is searched within this instance.

返回

等效于当前字符串(除了 oldValue 的所有实例都已替换为 newValue 外)的字符串。A string that is equivalent to the current string except that all instances of oldValue are replaced with newValue. 如果在当前实例中找不到 oldValue,此方法返回未更改的当前实例。If oldValue is not found in the current instance, the method returns the current instance unchanged.

异常

oldValuenulloldValue is null.

oldValue 为空字符串 ("")。oldValue is the empty string ("").

注解

如果 null``newValue,则将删除 oldValue 的所有匹配项。If newValue is null, all occurrences of oldValue are removed.

备注

此方法不会修改当前实例的值。This method does not modify the value of the current instance. 相反,它会返回一个新字符串,其中 oldValue 的所有匹配项都将替换为 newValueInstead, it returns a new string in which all occurrences of oldValue are replaced by newValue.

此方法使用 comparisonType所述的区域性和区分大小写的区分法来执行搜索以查找 oldValueThis method performs a search to find oldValue using the culture and case sensitivity described by comparisonType.

由于此方法返回修改后的字符串,因此可以将对 Replace 方法的连续调用链接在一起,以便对原始字符串执行多次替换。Because this method returns the modified string, you can chain together successive calls to the Replace method to perform multiple replacements on the original string. 方法调用从左至右执行。Method calls are executed from left to right. 下面的示例进行了这方面的演示。The following example provides an illustration.

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'

适用于