String.Trim メソッド

定義

現在の文字列から、指定した文字セットを先頭および末尾の出現箇所からすべて削除した新しい文字列を返します。

オーバーロード

Trim(Char[])

現在の文字列から、配列で指定された一連の文字が先頭および末尾に現れる箇所をすべて削除します。

Trim(Char)

現在の文字列から、文字の先頭および末尾のインスタンスをすべて削除します。

Trim()

現在の文字列から、先頭および末尾にある空白文字をすべて削除します。

Trim(Char[])

現在の文字列から、配列で指定された一連の文字が先頭および末尾に現れる箇所をすべて削除します。

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

戻り値

String

現在の文字列の先頭および末尾から、trimChars パラメーターの文字をすべて削除した後に残った文字列。 trimCharsnull または空の配列の場合は、代わりに空白文字が削除されます。 現在のインスタンスから文字をトリミングできない場合、メソッドは現在のインスタンスを変更せずに返します。

次の例では、メソッドを使用して、 Trim(System.Char[]) 文字列からスペース、アスタリスク (*)、およびアポストロフィ (') 文字を削除します。

using namespace System;

void main()
{
   array<Char>^ charsToTrim = { L'*', L' ', L'\\' };
   String^ banner = "*** Much Ado About Nothing ***";
   String^ result = banner->Trim(charsToTrim);
   Console::WriteLine("Trimmmed\n   {0}\nto\n   '{1}'", banner, result);
}
// The example displays the following output:
//       Trimmmed
//          *** Much Ado About Nothing ***
//       to
//          'Much Ado About Nothing'
char[] charsToTrim = { '*', ' ', '\''};
string banner = "*** Much Ado About Nothing ***";
string result = banner.Trim(charsToTrim);
Console.WriteLine("Trimmmed\n   {0}\nto\n   '{1}'", banner, 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" を返します。

注意

メソッドが Trim(System.Char[]) 現在のインスタンスから任意の文字を削除した場合、このメソッドは現在のインスタンスの値を変更しません。 代わりに、現在のインスタンスに含まれる先頭および末尾のすべての文字が削除された新しい文字列を返し trimChars ます。

現在の文字列がと等しい場合、 Empty または現在のインスタンス内のすべての文字が配列内の文字で構成されている場合 trimChars 、メソッドはを返し Empty ます。

trimCharsがまたは空の配列の場合 null 、このメソッドは、メソッド true に渡されたときにメソッドによって返される先頭または末尾の文字を削除し Char.IsWhiteSpace ます。

注意 (呼び出し元)

.NET Framework 3.5 SP1 以前のバージョンでは、 trimChars がまたは空の配列の場合に、このメソッドがトリムする空白文字の内部リストを保持し null ます。 .NET Framework 4 以降では、がまたは空の配列の場合、 trimChars null メソッドはすべての Unicode 空白文字 (つまり、メソッドに渡されるときに戻り値を生成する文字) をトリムし true IsWhiteSpace(Char) ます。 この変更により、 Trim() .NET Framework 3.5 SP1 以前のバージョンのメソッドでは、2つの文字、0の幅のスペース (u + 200B) とゼロ幅の改行なしスペース (u + FEFF) が削除 Trim() されます。このメソッドは、.NET Framework 4and のバージョンでは削除されません。 さらに、 Trim() .NET Framework 3.5 SP1 以前のバージョンのメソッドでは、3つの Unicode の空白文字 (モンゴル語の母音区切り記号 (u + 180 e)、ナロー改行なしスペース (u + 202f)、中かっこ (u + 205F)) はトリミングされません。

こちらもご覧ください

適用対象

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 文字。

戻り値

String

現在の文字列の先頭と末尾から trimChar 文字のすべてのインスタンスが削除された後に残った文字列。 現在のインスタンスから文字をトリミングできない場合、メソッドは現在のインスタンスを変更せずに返します。

注釈

メソッド Trim(System.Char) は、文字の先頭と末尾のすべてのインスタンスを現在の文字列から削除 trimChar します。 先頭と末尾の各トリム操作は、 とは異なる文字が検出 trimChar された場合に停止します。 たとえば、 が で、現在の文字列が trimChar - "---abc---xyz----" の場合、メソッドは Trim(System.Char) "abc---xyz" を返します。 文字列内の単語間の文字を削除するには 、.NET 正規表現 を使用します

注意

メソッドが Trim(System.Char) 現在のインスタンスから文字を削除した場合、このメソッドは現在のインスタンスの値を変更しません。 代わりに、現在のインスタンスで見つかった先頭と末尾のすべての文字が削除される新しい trimChar 文字列が返されます。

現在の文字列が と等しい場合、または現在のインスタンス内のすべての文字が文字で構成されている場合、 Empty trimChar メソッドは を返します Empty

適用対象

Trim()

現在の文字列から、先頭および末尾にある空白文字をすべて削除します。

public:
 System::String ^ Trim();
public string Trim ();
member this.Trim : unit -> string
Public Function Trim () As String

戻り値

String

現在の文字列の先頭および末尾から空白文字をすべて削除した後に残った文字列。 現在のインスタンスから文字をトリミングできない場合、メソッドは現在のインスタンスを変更せずに返します。

次の例では、 メソッドを使用して、ユーザーが入力した文字列から余分な空白を削除してから String.Trim() 連結します。

using namespace System;

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 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.
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.
    }
}
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 正規表現 を使用します

注意

メソッドが Trim 現在のインスタンスから文字を削除した場合、このメソッドは現在のインスタンスの値を変更しません。 代わりに、現在のインスタンスで見つかった先頭と末尾のすべての空白文字が削除される新しい文字列が返されます。

現在の文字列が または現在のインスタンス内のすべての文字が空白文字で構成されている場合、メソッド Empty は を返します Empty

空白文字は、Unicode 標準で定義されます。 メソッドは、メソッドに渡された場合に の戻り値を生成する先頭と末尾 Trim true の文字を削除 Char.IsWhiteSpace します。

注意 (呼び出し元)

3.5 SP1 .NET Framework以前のバージョンでは、このメソッドによってトリミングされる空白文字の内部リストが保持されます。 .NET Framework 4 より、 メソッドは、すべての Unicode 空白文字 (つまり、メソッドに渡された場合に戻り値を生成する文字) を true トリミング IsWhiteSpace(Char) します。 この変更により、.NET Framework 3.5 SP1 以前のバージョンの メソッドは、.NET Framework 4 以降のバージョンの メソッドが削除しない 2 つの文字 ZERO Trim() WIDTH SPACE (U+200B) と ZERO WIDTH NO-BREAK SPACE (U+FEFF) を削除します。 Trim() さらに、.NET Framework 3.5 SP1 以前のバージョンの メソッドでは、UNICODE 空白文字として、3 つの Unicode 空白文字 Trim() (180E)、NARROW NO-BREAK SPACE (U+202F)、および MEDIUM MATHEMATICAL SPACE (U+205F) はトリミングしません。

こちらもご覧ください

適用対象