String.Trim 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
回傳一個新字串,該字串中指定字元的所有前後出現點都被移除。
多載
| 名稱 | Description |
|---|---|
| Trim(Char) |
移除目前字串中所有前後字元的實例。 |
| Trim(Char[]) |
從目前字串中移除陣列中指定的一組字元的所有前後出現。 |
| Trim() |
移除目前字串中所有前置與後方空白字元。 |
Trim(Char)
移除目前字串中所有前後字元的實例。
public:
System::String ^ Trim(char trimChar);
public string Trim(char trimChar);
member this.Trim : char -> string
Public Function Trim (trimChar As Char) As String
參數
- trimChar
- Char
要移除的 Unicode 字元。
傳回
所有字元實 trimChar 例結束後剩下的字串會從當前字串的起點和結尾移除。 如果無法從目前的實例修剪任何字元,此方法會傳回未變更的目前實例。
備註
此 Trim(System.Char) 方法會從目前字串中移除該字元的所有前置與後置實例 trimChar 。 每當遇到與 不同的字元時 trimChar ,每個前導與後方的修飾操作都會停止。 例如,若 trimChar 是 - 且目前字串為「---abc---xyz----」,則該 Trim(System.Char) 方法回傳「abc---xyz」。 若要移除字串中字串間的字元,請使用 .NET Regular Expressions。
Note
若方法 Trim(System.Char) 移除當前實例中的任何字元,該方法不會改變當前實例的值。 取而代之的是,它會回傳一個新字串,該字串中目前實例中所有的前導和後尾 trimChar 字元都被移除。
如果目前的字串等 Empty 於或目前實例中的所有字元都是 trimChar 字元,則該方法會回傳 Empty。
適用於
Trim(Char[])
從目前字串中移除陣列中指定的一組字元的所有前後出現。
public:
System::String ^ Trim(... cli::array <char> ^ trimChars);
public string Trim(params char[] trimChars);
member this.Trim : char[] -> string
Public Function Trim (ParamArray trimChars As Char()) As String
參數
- trimChars
- Char[]
一組 Unicode 字元陣列,用來移除,或 null。
傳回
參數中所有字元 trimChars 出現後剩下的字串會從當前字串的起點和結尾移除。 若 trimChars 為 null 空陣列,則移除空白字元。 如果無法從目前的實例修剪任何字元,此方法會傳回未變更的目前實例。
範例
以下範例使用 Trim(System.Char[]) 去除字串空格、星號(*)和撇號(')字元的方法。
char[] charsToTrim = { '*', ' ', '\''};
string banner = "*** Much Ado About Nothing ***";
string result = banner.Trim(charsToTrim);
Console.WriteLine("Trimmed\n {0}\nto\n '{1}'", banner, result);
// The example displays the following output:
// Trimmed
// *** Much Ado About Nothing ***
// to
// 'Much Ado About Nothing'
let charsToTrim = [| '*'; ' '; '\'' |]
let banner = "*** Much Ado About Nothing ***"
let result = banner.Trim charsToTrim
printfn $"Trimmmed\n {banner}\nto\n '{result}'"
// The example displays the following output:
// Trimmmed
// *** Much Ado About Nothing ***
// to
// 'Much Ado About Nothing'
Module Example
Public Sub Main()
Dim charsToTrim() As Char = { "*"c, " "c, "'"c}
Dim banner As String = "*** Much Ado About Nothing ***"
Dim result As String = banner.Trim(charsToTrim)
Console.WriteLine("Trimmmed{0} {1}{0}to{0} '{2}'", _
vbCrLf, banner, result)
End Sub
End Module
' The example displays the following output:
' Trimmmed
' *** Much Ado About Nothing ***
' to
' 'Much Ado About Nothing'
備註
此 Trim(System.Char[]) 方法會從目前字串中移除參數中所有的前置與尾隨字元 trimChars 。 每個前導與後尾的修剪操作在遇到不在 trimChars 該字元時停止。 例如,如果目前字串是「123abc456xyz789」,且 trimChars 包含「1」到「9」的數字,則該 Trim(System.Char[]) 方法會回傳「abc456xyz」。
Note
若方法 Trim(System.Char[]) 移除當前實例中的任何字元,該方法不會改變當前實例的值。 取而代之的是,它會回傳一個新字串,該字串中目前實例中所有的前導和後尾 trimChars 字元都被移除。
如果目前字串 Empty 等於或目前實例中的所有字元都由陣列中的 trimChars 字元組成,則該方法會回傳 Empty。
若 trimChars 或 null 為空陣列,此方法會移除導致該方法回傳trueChar.IsWhiteSpace的前置或後尾字元。
給呼叫者的注意事項
.NET Framework 3.5 SP1 及更早版本維護一個內部的空白字元清單,若 trimChars 為 或 null 為空陣列,此方法會修剪。 從 .NET Framework 4 開始,若trimChars是null空陣列,該方法會修剪所有 Unicode 空白字元(即傳遞給true方法時會產生IsWhiteSpace(Char)回傳值的字元)。 因此,.NET Framework 3.5 SP1 及更早版本中的 Trim() 方法移除了兩個字元:零寬度空間(U+200B)與零寬度 NO-BREAK 空間(U+FEFF),這些字元在 .NET Framework 4 及以後版本的 Trim() 方法中未被移除。 此外,.NET Framework 3.5 SP1 及更早版本中的方法 Trim() 不會裁剪三個 Unicode 空白字元:蒙古元音分隔符(U+180E)、狹 NO-BREAK 空間(U+202F)和 MEDIUM MATHEMATICAL SPACE(U+205F)。
另請參閱
適用於
Trim()
移除目前字串中所有前置與後方空白字元。
public:
System::String ^ Trim();
public string Trim();
member this.Trim : unit -> string
Public Function Trim () As String
傳回
在所有空白字元從當前字串的起始與結尾移除後,剩下的字串。 如果無法從目前的實例修剪任何字元,此方法會傳回未變更的目前實例。
範例
以下範例使用 String.Trim() 了使用者在串接前移除字串中多餘空白的方法。
using System;
public class Example
{
public static void Main()
{
Console.Write("Enter your first name: ");
string firstName = Console.ReadLine();
Console.Write("Enter your middle name or initial: ");
string middleName = Console.ReadLine();
Console.Write("Enter your last name: ");
string lastName = Console.ReadLine();
Console.WriteLine();
Console.WriteLine("You entered '{0}', '{1}', and '{2}'.",
firstName, middleName, lastName);
string name = ((firstName.Trim() + " " + middleName.Trim()).Trim() + " " +
lastName.Trim()).Trim();
Console.WriteLine("The result is " + name + ".");
// The following is a possible output from this example:
// Enter your first name: John
// Enter your middle name or initial:
// Enter your last name: Doe
//
// You entered ' John ', '', and ' Doe'.
// The result is John Doe.
}
}
printf "Enter your first name: "
let firstName = stdin.ReadLine()
printf "Enter your middle name or initial: "
let middleName = stdin.ReadLine()
printf "Enter your last name: "
let lastName = stdin.ReadLine()
printfn $"\nYou entered '{firstName}', '{middleName}', and '{lastName}'."
let name = ((firstName.Trim() + " " + middleName.Trim()).Trim() + " " + lastName.Trim()).Trim()
printfn $"The result is {name}."
// The following is a possible output from this example:
// Enter your first name: John
// Enter your middle name or initial:
// Enter your last name: Doe
//
// You entered ' John ', '', and ' Doe'.
// The result is John Doe.
Module Example
Public Sub Main()
Console.Write("Enter your first name: ")
Dim firstName As String = Console.ReadLine()
Console.Write("Enter your middle name or initial: ")
Dim middleName As String = Console.ReadLine()
Console.Write("Enter your last name: ")
Dim lastName As String = Console.ReadLine
Console.WriteLine()
Console.WriteLine("You entered '{0}', '{1}', and '{2}'.", _
firstName, middleName, lastName)
Dim name As String = ((firstName.Trim() + " " + middleName.Trim()).Trim() _
+ " " + lastName.Trim()).Trim()
Console.WriteLine("The result is " + name + ".")
End Sub
End Module
' The following is possible output from this example:
' Enter your first name: John
' Enter your middle name or initial:
' Enter your last name: Doe
'
' You entered ' John ', '', and ' Doe'.
' The result is John Doe.
備註
此 Trim 方法會從目前字串中移除所有前後的空白字元。 每個前置與後尾的修剪操作在遇到非空白字元時停止。 例如,如果目前字串是「abc xyz」,則該 Trim 方法回傳「abc xyz」。 若要移除字串中字串間的空白字元,請使用 .NET Regular Expressions。
Note
若方法 Trim 移除當前實例中的任何字元,該方法不會改變當前實例的值。 取而代之的是,它會回傳一個新字串,將當前實例中所有前置和後方的空白字元移除。
如果目前字串 Empty 等於或目前實例中的所有字元皆為空白字元,則該方法回傳 Empty。
空白字元由 Unicode 標準定義。 此Trim方法會移除任何在傳遞時Char.IsWhiteSpace產生回傳值true的前置和尾隨字元。
給呼叫者的注意事項
.NET Framework 3.5 SP1 及更早版本會維護一個內部的空白字元清單,此方法會被修剪。 從 .NET Framework 4 開始,該方法會裁剪所有 Unicode 空白字元(即在傳遞給 IsWhiteSpace(Char) 方法時產生 true 回傳值的字元)。 由於此變更, Trim() .NET Framework 3.5 SP1 及更早版本中的方法移除了兩個字元:零寬度空間(U+200B)與零寬度 NO-BREAK 空間(U+FEFF),而 Trim() .NET Framework 4 及以後版本的方法則未移除這些字元。 此外,.NET Framework 3.5 SP1 及更早版本中的方法 Trim() 不會裁剪三個 Unicode 空白字元:蒙古元音分隔符(U+180E)、狹 NO-BREAK 空間(U+202F)和 MEDIUM MATHEMATICAL SPACE(U+205F)。