語言

String.Trim 方法

定義

回傳一個新字串,該字串中指定字元的所有前後出現點都被移除。

多載

名稱 Description
Trim(Rune)
Trim(Char[])

從目前字串中移除陣列中指定的一組字元的所有前後出現。

Trim(Char)

移除目前字串中所有前後字元的實例。

Trim()

移除目前字串中所有前置與後方空白字元。

Trim(Rune)

來源:
String.Manipulation.cs
public:
 System::String ^ Trim(System::Text::Rune trimRune);
public string Trim(System.Text.Rune trimRune);
member this.Trim : System.Text.Rune -> string
Public Function Trim (trimRune As Rune) As String

參數

trimRune
Rune

傳回

適用於

Trim(Char[])

來源:
String.Manipulation.cs
來源:
String.Manipulation.cs
來源:
String.Manipulation.cs
來源:
String.Manipulation.cs
來源:
String.Manipulation.cs

從目前字串中移除陣列中指定的一組字元的所有前後出現。

public:
 System::String ^ Trim(... cli::array <char> ^ trimChars);
public string Trim(params 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(Char)

來源:
String.Manipulation.cs
來源:
String.Manipulation.cs
來源:
String.Manipulation.cs
來源:
String.Manipulation.cs
來源:
String.Manipulation.cs

移除目前字串中所有前後字元的實例。

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

來源:
String.Manipulation.cs
來源:
String.Manipulation.cs
來源:
String.Manipulation.cs
來源:
String.Manipulation.cs
來源:
String.Manipulation.cs

移除目前字串中所有前置與後方空白字元。

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方法會移除任何在傳遞時true產生回傳值Char.IsWhiteSpace的前置和尾隨字元。

給呼叫者的注意事項

.NET Framework 3.5 SP1 及更早版本會維護一個內部的空白字元清單,此方法會被修剪。 從 .NET Framework 4 開始,該方法會裁剪所有 Unicode 空白字元(即在傳遞給 true 方法時產生 IsWhiteSpace(Char) 回傳值的字元)。 由於此變更, 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)。

另請參閱

適用於