String.Replace 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
Replace(Char, Char) |
返回一个新字符串,其中此实例中出现的所有指定 Unicode 字符都替换为另一个指定的 Unicode 字符。 |
Replace(String, String) |
返回一个新字符串,其中当前实例中出现的所有指定字符串都替换为另一个指定的字符串。 |
Replace(String, String, StringComparison) |
返回一个新字符串,其中当前实例中出现的所有指定字符串都使用提供的比较类型替换为另一个指定的字符串。 |
Replace(String, String, Boolean, CultureInfo) |
返回一个新字符串,其中当前实例中出现的所有指定字符串都使用提供的区域性和区分大小写属性替换为另一个指定的字符串。 |
Replace(Char, Char)
- Source:
- String.Manipulation.cs
- Source:
- String.Manipulation.cs
- Source:
- String.Manipulation.cs
返回一个新字符串,其中此实例中出现的所有指定 Unicode 字符都替换为另一个指定的 Unicode 字符。
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 字符。
- newChar
- Char
要替换出现的所有 oldChar
的 Unicode 字符。
返回
等效于此实例(除了 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"
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
。
注意
此方法不会修改当前实例的值。 相反,它返回一个新字符串,在该字符串中, 的所有匹配 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'
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'
另请参阅
- Char
- Concat(Object)
- Insert(Int32, String)
- Join(String, String[])
- Remove(Int32, Int32)
- Split(Char[])
- Substring(Int32)
- Trim(Char[])
适用于
Replace(String, String)
- Source:
- String.Manipulation.cs
- Source:
- String.Manipulation.cs
- Source:
- 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 方法来更正拼写错误。
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'
//
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
匹配项。
注意
此方法不会修改当前实例的值。 相反,它返回一个新字符串,在该字符串中, 的所有匹配 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'
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'
另请参阅
- Concat(Object)
- Insert(Int32, String)
- Join(String, String[])
- Remove(Int32, Int32)
- Split(Char[])
- Substring(Int32)
- Trim(Char[])
适用于
Replace(String, String, StringComparison)
- Source:
- String.Manipulation.cs
- Source:
- String.Manipulation.cs
- Source:
- 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
匹配项。
注意
此方法不会修改当前实例的值。 相反,它返回一个新字符串,在该字符串中, 的所有匹配 oldValue
项都由 newValue
替换。
此方法使用 描述comparisonType
的区域性和区分大小写的方式执行搜索以查找 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'
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)
- Source:
- String.Manipulation.cs
- Source:
- String.Manipulation.cs
- Source:
- 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
匹配项。
注意
此方法不会修改当前实例的值。 相反,它返回一个新字符串,在该字符串中, 的所有匹配 oldValue
项都由 newValue
替换。
此方法使用提供的 culture
和ignoreCase
区分大小写的 执行搜索以查找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'
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'