String.TrimStart Метод

Определение

Перегрузки

TrimStart()

Удаляет все начальные символы пробела из текущей строки.Removes all the leading white-space characters from the current string.

TrimStart(Char[])

Удаляет все начальные вхождения набора символов, заданного в виде массива, из текущей строки.Removes all the leading occurrences of a set of characters specified in an array from the current string.

TrimStart(Char)

Удаляет все начальные вхождения указанного символа из текущей строки.Removes all the leading occurrences of a specified character from the current string.

TrimStart()

Удаляет все начальные символы пробела из текущей строки.Removes all the leading white-space characters from the current string.

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

Возвраты

Строка, оставшаяся после удаления всех символов пробела из начала текущей строки.The string that remains after all white-space characters are removed from the start of the current string. Если в текущем экземпляре невозможно усечь символы, метод возвращает текущий экземпляр без изменений.If no characters can be trimmed from the current instance, the method returns the current instance unchanged.

Комментарии

Метод TrimStart удаляет из текущей строки все начальные пробельные символы.The TrimStart method removes from the current string all leading white-space characters. Операция Trim останавливается при обнаружении символа, не являющегося пробелом.The trim operation stops when a non white-space character is encountered. Например, если текущей строкой является "ABC XYZ", метод TrimStart возвращает "ABC XYZ".For example, if the current string is " abc xyz ", the TrimStart method returns "abc xyz ".

Примечание

Если метод TrimStart удаляет все символы из текущего экземпляра, этот метод не изменяет значение текущего экземпляра.If the TrimStart method removes any characters from the current instance, this method does not modify the value of the current instance. Вместо этого возвращается новая строка, в которой удаляются все начальные пробелы, найденные в текущем экземпляре.Instead, it returns a new string in which all leading white space characters found in the current instance are removed.

TrimStart(Char[])

Удаляет все начальные вхождения набора символов, заданного в виде массива, из текущей строки.Removes all the leading occurrences of a set of characters specified in an array from the current string.

public:
 System::String ^ TrimStart(... cli::array <char> ^ trimChars);
public string TrimStart (params char[] trimChars);
member this.TrimStart : char[] -> string
Public Function TrimStart (ParamArray trimChars As Char()) As String

Параметры

trimChars
Char[]

Массив удаляемых знаков Юникода или null.An array of Unicode characters to remove, or null.

Возвраты

Строка, оставшаяся после удаления всех вхождений символов, заданных в параметре trimChars, из начала текущей строки.The string that remains after all occurrences of characters in the trimChars parameter are removed from the start of the current string. Если значением параметра trimChars является null или пустой массив, удаляются символы-разделители.If trimChars is null or an empty array, white-space characters are removed instead. Если в текущем экземпляре невозможно усечь символы, метод возвращает текущий экземпляр без изменений.If no characters can be trimmed from the current instance, the method returns the current instance unchanged.

Примеры

В следующем примере показаны основные функциональные возможности метода TrimStart:The following example demonstrates the basic functionality of the TrimStart method:

// TrimStart examples
string lineWithLeadingSpaces = "   Hello World!";
string lineWithLeadingSymbols = "$$$$Hello World!";
string lineWithLeadingUnderscores = "_____Hello World!";
string lineWithLeadingLetters = "xxxxHello World!";
string lineAfterTrimStart = string.Empty;

// Make it easy to print out and work with all of the examples
string[] lines = { lineWithLeadingSpaces, lineWithLeadingSymbols, lineWithLeadingUnderscores, lineWithLeadingLetters };

foreach (var line in lines)
{
    Console.WriteLine($"This line has leading characters: {line}");
}
// Output:
// This line has leading characters:    Hello World!
// This line has leading characters: $$$$Hello World!
// This line has leading characters: _____Hello World!
// This line has leading characters: xxxxHello World!

// A basic demonstration of TrimStart in action
lineAfterTrimStart = lineWithLeadingSpaces.TrimStart(' ');
Console.WriteLine($"This is the result after calling TrimStart: {lineAfterTrimStart}");
// This is the result after calling TrimStart: Hello World!   

// Since TrimStart accepts a character array of leading items to be removed as an argument,
// it's possible to do things like trim multiple pieces of data that each have different 
// leading characters,
foreach (var lineToEdit in lines)
{
    Console.WriteLine(lineToEdit.TrimStart(' ', '$', '_', 'x'));
}
// Result for each: Hello World!

// or handle pieces of data that have multiple kinds of leading characters 
var lineToBeTrimmed = "__###__ John Smith";
lineAfterTrimStart = lineToBeTrimmed.TrimStart('_', '#', ' ');
Console.WriteLine(lineAfterTrimStart);
// Result: John Smith
Public Sub Main()
   ' TrimStart Examples
   Dim lineWithLeadingSpaces as String = "   Hello World!"
   Dim lineWithLeadingSymbols as String = "$$$$Hello World!"
   Dim lineWithLeadingUnderscores as String = "_____Hello World!"
   Dim lineWithLeadingLetters as String = "xxxxHello World!"
   Dim lineAfterTrimStart = String.Empty

   ' Make it easy to print out and work with all of the examples
   Dim lines As String() = { lineWithLeadingSpaces, line lineWithLeadingSymbols, lineWithLeadingUnderscores, lineWithLeadingLetters }

   For Each line As String in lines
     Console.WriteLine($"This line has leading characters: {line}")
   Next
   ' Output:
   ' This line has leading characters:    Hello World!
   ' This line has leading characters: $$$$Hello World!
   ' This line has leading characters: _____Hello World!
   ' This line has leading characters: xxxxHello World!

   Console.WriteLine($"This line has leading spaces: {lineWithLeadingSpaces}")
   ' This line has leading spaces:   Hello World!

   ' A basic demonstration of TrimStart in action
   lineAfterTrimStart = lineWithLeadingSpaces.TrimStart(" "c)
   Console.WriteLine($"This is the result after calling TrimStart: {lineAfterTrimStart}")
   ' This is the result after calling TrimStart: Hello World!

   ' Since TrimStart accepts a character array of leading items to be removed as an argument,
   ' it's possible to do things like trim multiple pieces of data that each have different 
   ' leading characters,
   For Each lineToEdit As String in lines
     Console.WriteLine(lineToEdit.TrimStart(" "c, "$"c, "_"c, "x"c ))
   Next
   ' Result for each: Hello World!

   ' or handle pieces of data that have multiple kinds of leading characters
   Dim lineToBeTrimmed as String = "__###__ John Smith"
   lineAfterTrimStart = lineToBeTrimmed.TrimStart("_"c , "#"c , " "c)
   Console.WriteLine(lineAfterTrimStart)
   ' Result: John Smith

 End Sub

В следующем примере используется метод TrimStart для удаления пробелов и символов комментариев из строк исходного кода.The following example uses the TrimStart method to trim white space and comment characters from lines of source code. Метод StripComments служит оболочкой для вызова TrimStart и передает ему массив символов, который содержит пробел, и символ комментария, который является апострофом (') в Visual Basic и косой чертой (/) в C#.The StripComments method wraps a call to TrimStart and passes it a character array that contains a space and the comment character, which is an apostrophe ( ' ) in Visual Basic and a slash ( / ) in C#. Метод TrimStart также вызывается для удаления начальных пробелов при оценке того, является ли строка комментарием.The TrimStart method is also called to remove leading white space when evaluating whether a string is a comment.

public static string[] StripComments(string[] lines)
{
    List<string> lineList = new List<string>();
    foreach (string line in lines)
    {
        if (line.TrimStart(' ').StartsWith("//"))
            lineList.Add(line.TrimStart(' ', '/'));
    }
    return lineList.ToArray();
}
Public Shared Function StripComments(lines() As String) As String()
   Dim lineList As New List(Of String)
   For Each line As String In lines
      If line.TrimStart(" "c).StartsWith("'") Then
         linelist.Add(line.TrimStart("'"c, " "c))
      End If
   Next
   Return lineList.ToArray()
End Function   

В следующем примере показан вызов метода StripComments.The following example then illustrates a call to the StripComments method.

public static void Main()
{
    string[] lines = {"using System;",
                   "",
                   "public class HelloWorld",
                   "{",
                   "   public static void Main()",
                   "   {",
                   "      // This code displays a simple greeting",
                   "      // to the console.",
                   "      Console.WriteLine(\"Hello, World.\");",
                   "   }",
                   "}"};
    Console.WriteLine("Before call to StripComments:");
    foreach (string line in lines)
        Console.WriteLine("   {0}", line);

    string[] strippedLines = StripComments(lines);
    Console.WriteLine("After call to StripComments:");
    foreach (string line in strippedLines)
        Console.WriteLine("   {0}", line);
}
// This code produces the following output to the console:
//    Before call to StripComments:
//       using System;
//   
//       public class HelloWorld
//       {
//           public static void Main()
//           {
//               // This code displays a simple greeting
//               // to the console.
//               Console.WriteLine("Hello, World.");
//           }
//       }  
//    After call to StripComments:
//       This code displays a simple greeting
//       to the console.
Public Shared Sub Main()
   Dim lines() As String = {"Public Module HelloWorld", _
                            "   Public Sub Main()", _
                            "      ' This code displays a simple greeting", _
                            "      ' to the console.", _
                            "      Console.WriteLine(""Hello, World."")", _
                            "   End Sub", _
                            " End Module"}
   Console.WriteLine("Code before call to StripComments:")
   For Each line As String In lines
      Console.WriteLine("   {0}", line)                         
   Next                            
   
   Dim strippedLines() As String = StripComments(lines) 
   Console.WriteLine("Code after call to StripComments:")
   For Each line As String In strippedLines
      Console.WriteLine("   {0}", line)                         
   Next                            
End Sub
' This code produces the following output to the console:
'    Code before call to StripComments:
'       Public Module HelloWorld
'          Public Sub Main()
'             ' This code displays a simple greeting
'             ' to the console.
'             Console.WriteLine("Hello, World.")
'          End Sub
'       End Module
'    Code after call to StripComments:
'       This code displays a simple greeting
'       to the console.   

Комментарии

Метод TrimStart(System.Char[]) удаляет из текущей строки все ведущие символы, которые находятся в параметре trimChars.The TrimStart(System.Char[]) method removes from the current string all leading characters that are in the trimChars parameter. Операция Trim останавливается при обнаружении символа, который не находится в trimChars.The trim operation stops when a character that is not in trimChars is encountered. Например, если текущая строка — "123abc456xyz789", а trimChars содержит цифры от "1" до "9", метод TrimStart(System.Char[]) возвращает значение "abc456xyz789".For example, if the current string is "123abc456xyz789" and trimChars contains the digits from "1" through "9", the TrimStart(System.Char[]) method returns "abc456xyz789".

Примечание

Если метод TrimStart(System.Char[]) удаляет все символы из текущего экземпляра, этот метод не изменяет значение текущего экземпляра.If the TrimStart(System.Char[]) method removes any characters from the current instance, this method does not modify the value of the current instance. Вместо этого возвращается новая строка, в которой удаляются все ведущие символы, находящиеся в параметре trimChars, который находится в текущем экземпляре.Instead, it returns a new string in which all leading characters that are in the trimChars parameter found in the current instance are removed.

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

.NET Framework 3.5 SP1.NET Framework 3.5 SP1 и более ранние версии поддерживают внутренний список пробелов, которые этот метод обрезает, если trimChars null или пустой массив.The .NET Framework 3.5 SP1.NET Framework 3.5 SP1 and earlier versions maintains an internal list of white-space characters that this method trims if trimChars is null or an empty array. Начиная с .NET Framework 4.NET Framework 4, если trimChars имеет null или пустой массив, метод усекает все пробелы в Юникоде (т. е. символы, которые создают возвращаемое значение true, когда они передаются в метод IsWhiteSpace(Char)).Starting with the .NET Framework 4.NET Framework 4, if trimChars is null or an empty array, the method trims all Unicode white-space characters (that is, characters that produce a true return value when they are passed to the IsWhiteSpace(Char) method). В связи с этим изменением метод Trim() в .NET Framework 3.5 SP1.NET Framework 3.5 SP1 и более ранних версиях удаляет два символа, НУЛЕВой размер пространства (U + 200B) и НУЛЕВую ширину свободного пространства (U + FEFF), что метод Trim() в .NET Framework 4.NET Framework 4 и более поздних версиях не удаляется.Because of this change, the Trim() method in the .NET Framework 3.5 SP1.NET Framework 3.5 SP1 and earlier versions removes two characters, ZERO WIDTH SPACE (U+200B) and ZERO WIDTH NO-BREAK SPACE (U+FEFF), that the Trim() method in the .NET Framework 4.NET Framework 4 and later versions does not remove. Кроме того, метод Trim() в .NET Framework 3.5 SP1.NET Framework 3.5 SP1 и более ранних версиях не обрезает три символа пробела в Юникоде: МОНГОЛЬСКИЙ ГЛАСный разделитель (U + 180E), УЗКИе пространства без ПЕРЕРЫВов (U + 202F) и среднее МАТЕМАТИЧЕСКое пространство (U + 205F).In addition, the Trim() method in the .NET Framework 3.5 SP1.NET Framework 3.5 SP1 and earlier versions does not trim three Unicode white-space characters: MONGOLIAN VOWEL SEPARATOR (U+180E), NARROW NO-BREAK SPACE (U+202F), and MEDIUM MATHEMATICAL SPACE (U+205F).

Дополнительно

TrimStart(Char)

Удаляет все начальные вхождения указанного символа из текущей строки.Removes all the leading occurrences of a specified character from the current string.

public:
 System::String ^ TrimStart(char trimChar);
public string TrimStart (char trimChar);
member this.TrimStart : char -> string
Public Function TrimStart (trimChar As Char) As String

Параметры

trimChar
Char

Удаляемый символ Юникода.The Unicode character to remove.

Возвраты

Строка, оставшаяся после удаления всех вхождений символа trimChar из начала текущей строки.The string that remains after all occurrences of the trimChar character are removed from the start of the current string. Если в текущем экземпляре невозможно усечь символы, метод возвращает текущий экземпляр без изменений.If no characters can be trimmed from the current instance, the method returns the current instance unchanged.

Комментарии

Метод TrimStart(System.Char) удаляет из текущей строки все ведущие trimChar символов.The TrimStart(System.Char) method removes from the current string all leading trimChar characters. Операция Trim останавливается при обнаружении символа, не trimChar.The trim operation stops when a character that is not trimChar is encountered. Например, если trimChar -, а текущая строка — "---ABC---XYZ----", то метод TrimStart(System.Char) возвращает "ABC---XYZ----".For example, if trimChar is - and the current string is "---abc---xyz----", the TrimStart(System.Char) method returns "abc---xyz----".

Примечание

Если метод TrimStart(System.Char) удаляет все символы из текущего экземпляра, этот метод не изменяет значение текущего экземпляра.If the TrimStart(System.Char) method removes any characters from the current instance, this method does not modify the value of the current instance. Вместо этого возвращается новая строка, в которой удаляются все начальные символы trimChar, найденные в текущем экземпляре.Instead, it returns a new string in which all leading trimChar characters found in the current instance are removed.

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