Поделиться через


String.Trim Метод

Определение

Возвращает новую строку, в которой удаляются все начальные и конечные вхождения набора указанных символов из текущей строки.

Перегрузки

Trim(Char)

Удаляет все начальные и конечные экземпляры символа из текущей строки.

Trim(ReadOnlySpan<Char>)

Удаляет все начальные и конечные вхождения набора символов, указанных в диапазоне из текущей строки.

Trim()

Удаляет все начальные и конечные пробелы из текущей строки.

Trim(Char[])

Удаляет все начальные и конечные вхождения набора символов, указанных в массиве из текущей строки.

Trim(Char)

Исходный код:
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

Символ Юникода для удаления.

Возвращаемое значение

Строка, которая остается после всех экземпляров символа trimChar, удаляется из начала и конца текущей строки. Если символы не могут быть обрезаны из текущего экземпляра, метод возвращает текущий экземпляр без изменений.

Комментарии

Метод Trim(System.Char) удаляет из текущей строки все начальные и конечные экземпляры символа trimChar. Каждая начальная и конечная операция обрезки останавливается при обнаружении символа, отличного от trimChar. Например, если trimChar-, а текущая строка — "---abc---xyz----", метод Trim(System.Char) возвращает "abc---xyz". Чтобы удалить символы между словами в строке, используйте регулярные выражения .NET.

Заметка

Если метод Trim(System.Char) удаляет любые символы из текущего экземпляра, этот метод не изменяет значение текущего экземпляра. Вместо этого возвращается новая строка, в которой удаляются все начальные и конечные trimChar символы, найденные в текущем экземпляре.

Если текущая строка равна Empty или все символы в текущем экземпляре состоят из trimChar символов, метод возвращает Empty.

Применяется к

Trim(ReadOnlySpan<Char>)

Удаляет все начальные и конечные вхождения набора символов, указанных в диапазоне из текущей строки.

public:
 System::String ^ Trim(ReadOnlySpan<char> trimChars);
public string Trim (scoped ReadOnlySpan<char> trimChars);
member this.Trim : ReadOnlySpan<char> -> string
Public Function Trim (trimChars As ReadOnlySpan(Of Char)) As String

Параметры

trimChars
ReadOnlySpan<Char>

Диапазон символов Юникода для удаления.

Возвращаемое значение

Строка, которая остается после всех вхождения символов в параметре trimChars, удаляется из начала и конца текущей строки. Если trimChars пуст, вместо этого удаляются символы пробелов. Если символы не могут быть обрезаны из текущего экземпляра, метод возвращает текущий экземпляр без изменений.

Применяется к

Trim()

Исходный код:
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 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.
    }
}
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.

Заметка

Если метод Trim удаляет любые символы из текущего экземпляра, этот метод не изменяет значение текущего экземпляра. Вместо этого возвращается новая строка, в которой удаляются все начальные и конечные символы пробелов, найденные в текущем экземпляре.

Если текущая строка равна Empty или все символы в текущем экземпляре состоят из символов пробелов, метод возвращает Empty.

Пробелы определяются стандартом Юникода. Метод Trim удаляет все начальные и конечные символы, которые создают возвращаемое значение true при передаче в метод Char.IsWhiteSpace.

Примечания для тех, кто вызывает этот метод

.NET Framework 3.5 с пакетом обновления 1 (SP1) и более ранних версий поддерживает внутренний список символов пробелов, которые этот метод обрезает. Начиная с .NET Framework 4 метод обрезает все символы пробелов Юникода (т. е. символы, которые создают значение true возвращаемого значения при передаче в метод IsWhiteSpace(Char)). Из-за этого изменения метод Trim() в .NET Framework 3.5 с пакетом обновления 1 (SP1) и более ранних версиях удаляет два символа, НОЛЬ ШИРИНЫ (U+200B) и НУЛЕВОЙ ШИРИНЫ NO-BREAK ПРОБЕЛ (U+FEFF), что метод Trim() в .NET Framework 4 и более поздних версиях не удаляется. Кроме того, метод Trim() в .NET Framework 3.5 с пакетом обновления 1 (SP1) и более ранних версиях не обрезает три символа пробела Юникода: РАЗДЕЛИТЕЛЬ VOWEL (U+180E), СУЗИТЬ NO-BREAK ПРОБЕЛ (U+202F) и СРЕДНИЙ МАТЕМАТИЧЕСКИЙ ПРОБЕЛ (U+205F).

См. также раздел

Применяется к

Trim(Char[])

Исходный код:
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[]

Массив символов Юникода для удаления или null.

Возвращаемое значение

Строка, которая остается после всех вхождения символов в параметре 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("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".

Заметка

Если метод Trim(System.Char[]) удаляет любые символы из текущего экземпляра, этот метод не изменяет значение текущего экземпляра. Вместо этого возвращается новая строка, в которой удаляются все начальные и конечные trimChars символы, найденные в текущем экземпляре.

Если текущая строка равна Empty или все символы в текущем экземпляре состоят из символов в массиве trimChars, метод возвращает Empty.

Если trimCharsnull или пустой массив, этот метод удаляет все начальные или конечные символы, которые приводят к возврату метода true при передаче в метод Char.IsWhiteSpace.

Примечания для тех, кто вызывает этот метод

Платформа .NET Framework 3.5 с пакетом обновления 1 (SP1) и более ранние версии поддерживает внутренний список символов пробелов, которые этот метод обрезает, если trimCharsnull или пустой массив. Начиная с .NET Framework 4, если trimCharsnull или пустой массив, метод обрезает все символы пробелов Юникода (то есть символы, которые создают true возвращаемое значение при передаче в метод IsWhiteSpace(Char)). Из-за этого изменения метод Trim() в .NET Framework 3.5 с пакетом обновления 1 (SP1) и более ранних версиях удаляет два символа, НОЛЬ ШИРИНЫ (U+200B) и НУЛЕВОЙ ШИРИНЫ NO-BREAK ПРОБЕЛ (U+FEFF), что метод Trim() в .NET Framework 4and более поздних версий не удаляется. Кроме того, метод Trim() в .NET Framework 3.5 с пакетом обновления 1 (SP1) и более ранних версиях не обрезает три символа пробела Юникода: РАЗДЕЛИТЕЛЬ VOWEL (U+180E), СУЗИТЬ NO-BREAK ПРОБЕЛ (U+202F) и СРЕДНИЙ МАТЕМАТИЧЕСКИЙ ПРОБЕЛ (U+205F).

См. также раздел

Применяется к