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

返回

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. 如果遇到非空白字符,剪裁操作将停止。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);
public string TrimStart (params char[]? trimChars);
member this.TrimStart : char[] -> string
Public Function TrimStart (ParamArray trimChars As Char()) As String

参数

trimChars
Char[]

要删除的 Unicode 字符的数组,或 nullAn array of Unicode characters to remove, or null.

返回

String

从当前字符串的开头移除所出现的所有 trimChars 参数中的字符后剩余的字符串。The string that remains after all occurrences of characters in the trimChars parameter are removed from the start of the current string. 如果 trimCharsnull 或空数组,则改为移除空白字符。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.

示例

下面的示例演示方法的基本功能 TrimStartThe 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[])方法从当前字符串中删除参数中的所有前导字符 trimCharsThe TrimStart(System.Char[]) method removes from the current string all leading characters that are in the trimChars parameter. 当遇到不在中的字符时,剪裁操作将停止 trimCharsThe 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. 相反,它会返回一个新字符串,其中将删除当前实例中找到的参数中的所有前导字符 trimCharsInstead, 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 为或空数组,此方法将修整此列表 nullThe .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 ,如果 trimCharsnull 或空数组,该方法将剪裁所有 Unicode 空白字符, (也就是说,在将 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 和更早版本中的方法不会剪裁三个 Unicode 空白字符:蒙古语元音分隔符 (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

要删除的 Unicode 字符。The Unicode character to remove.

返回

String

从当前字符串的开头删除所出现的所有 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. 当遇到不是的字符时,剪裁操作将停止 trimCharThe 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.

适用于