Teilen über


String.TrimStart Methode

Definition

Überlädt

TrimStart(ReadOnlySpan<Char>)

Entfernt alle führenden Vorkommen einer Reihe von Zeichen, die in einer Spanne von der aktuellen Zeichenfolge angegeben sind.

TrimStart()

Entfernt alle führenden Leerzeichen aus der aktuellen Zeichenfolge.

TrimStart(Char)

Entfernt alle führenden Vorkommen eines angegebenen Zeichens aus der aktuellen Zeichenfolge.

TrimStart(Char[])

Entfernt alle führenden Vorkommen einer Reihe von Zeichen, die in einem Array angegeben sind, aus der aktuellen Zeichenfolge.

TrimStart(ReadOnlySpan<Char>)

Entfernt alle führenden Vorkommen einer Reihe von Zeichen, die in einer Spanne von der aktuellen Zeichenfolge angegeben sind.

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

Parameter

trimChars
ReadOnlySpan<Char>

Eine Spanne von Unicode-Zeichen, die entfernt werden sollen.

Gibt zurück

Die Zeichenfolge, die nach allen Vorkommen von Zeichen im parameter trimChars verbleibt, wird vom Anfang der aktuellen Zeichenfolge entfernt. Wenn trimChars leer ist, werden stattdessen Leerzeichen entfernt. Wenn keine Zeichen von der aktuellen Instanz gekürzt werden können, gibt die Methode die aktuelle Instanz unverändert zurück.

Gilt für:

TrimStart()

Quelle:
String.Manipulation.cs
Quelle:
String.Manipulation.cs
Quelle:
String.Manipulation.cs

Entfernt alle führenden Leerzeichen aus der aktuellen Zeichenfolge.

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

Gibt zurück

Die Zeichenfolge, die verbleibt, nachdem alle Leerzeichen am Anfang der aktuellen Zeichenfolge entfernt wurden. Wenn keine Zeichen von der aktuellen Instanz gekürzt werden können, gibt die Methode die aktuelle Instanz unverändert zurück.

Hinweise

Die TrimStart-Methode entfernt aus der aktuellen Zeichenfolge alle führenden Leerzeichen. Der Kürzungsvorgang wird beendet, wenn ein Nicht-Leerzeichen gefunden wird. Wenn die aktuelle Zeichenfolge beispielsweise "abc xyz" lautet, gibt die TrimStart-Methode "abc xyz" zurück.

Anmerkung

Wenn die TrimStart-Methode Zeichen aus der aktuellen Instanz entfernt, ändert diese Methode nicht den Wert der aktuellen Instanz. Stattdessen wird eine neue Zeichenfolge zurückgegeben, in der alle führenden Leerzeichen in der aktuellen Instanz entfernt werden.

Gilt für:

TrimStart(Char)

Quelle:
String.Manipulation.cs
Quelle:
String.Manipulation.cs
Quelle:
String.Manipulation.cs

Entfernt alle führenden Vorkommen eines angegebenen Zeichens aus der aktuellen Zeichenfolge.

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

Parameter

trimChar
Char

Das zu entfernende Unicode-Zeichen.

Gibt zurück

Die Zeichenfolge, die nach allen Vorkommen des trimChar Zeichens verbleibt, wird vom Anfang der aktuellen Zeichenfolge entfernt. Wenn keine Zeichen von der aktuellen Instanz gekürzt werden können, gibt die Methode die aktuelle Instanz unverändert zurück.

Hinweise

Die TrimStart(System.Char)-Methode entfernt aus der aktuellen Zeichenfolge alle führenden trimChar Zeichen. Der Kürzungsvorgang wird beendet, wenn ein Zeichen, das nicht trimChar ist, gefunden wird. Wenn trimChar beispielsweise - ist und die aktuelle Zeichenfolge "---abc---xyz----" lautet, gibt die TrimStart(System.Char)-Methode "abc---xyz----" zurück.

Anmerkung

Wenn die TrimStart(System.Char)-Methode Zeichen aus der aktuellen Instanz entfernt, ändert diese Methode nicht den Wert der aktuellen Instanz. Stattdessen wird eine neue Zeichenfolge zurückgegeben, in der alle führenden trimChar Zeichen in der aktuellen Instanz entfernt werden.

Gilt für:

TrimStart(Char[])

Quelle:
String.Manipulation.cs
Quelle:
String.Manipulation.cs
Quelle:
String.Manipulation.cs

Entfernt alle führenden Vorkommen einer Reihe von Zeichen, die in einem Array angegeben sind, aus der aktuellen Zeichenfolge.

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

Parameter

trimChars
Char[]

Ein Array von Unicode-Zeichen, die entfernt werden sollen, oder null.

Gibt zurück

Die Zeichenfolge, die nach allen Vorkommen von Zeichen im parameter trimChars verbleibt, wird vom Anfang der aktuellen Zeichenfolge entfernt. Wenn trimCharsnull oder ein leeres Array ist, werden stattdessen Leerzeichen entfernt. Wenn keine Zeichen von der aktuellen Instanz gekürzt werden können, gibt die Methode die aktuelle Instanz unverändert zurück.

Beispiele

Im folgenden Beispiel wird die grundlegende Funktionalität der TrimStart-Methode veranschaulicht:

// 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
// TrimStart examples
let lineWithLeadingSpaces = "   Hello World!"
let lineWithLeadingSymbols = "$$$$Hello World!"
let lineWithLeadingUnderscores = "_____Hello World!"
let lineWithLeadingLetters = "xxxxHello World!"

// Make it easy to print out and work with all of the examples
let lines = [| lineWithLeadingSpaces; lineWithLeadingSymbols; lineWithLeadingUnderscores; lineWithLeadingLetters |]

for line in lines do
    printfn $"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
let lineAfterTrimStart = lineWithLeadingSpaces.TrimStart ' '
printfn $"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 lineToEdit in lines do
    printfn $"""{lineToEdit.TrimStart(' ', '$', '_', 'x')}"""
// Result for each: Hello World!

// or handle pieces of data that have multiple kinds of leading characters 
let lineToBeTrimmed = "__###__ John Smith"
let lineAfterTrimStart2 = lineToBeTrimmed.TrimStart('_', '#', ' ')
printfn $"{lineAfterTrimStart2}"
// 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

Im folgenden Beispiel wird die TrimStart-Methode verwendet, um Leerzeichen und Kommentarzeichen aus Zeilen des Quellcodes zu kürzen. Die StripComments-Methode umschließt einen Aufruf von TrimStart und übergibt es ein Zeichenarray, das ein Leerzeichen und das Kommentarzeichen enthält, bei dem es sich um ein Apostroph ( ' ) in Visual Basic und einen Schrägstrich ( / ) in C# oder F# handelt. Die TrimStart-Methode wird auch aufgerufen, um führende Leerzeichen beim Auswerten, ob eine Zeichenfolge ein Kommentar ist, zu entfernen.

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();
}
let stripComments (lines: #seq<string>) =
    [|  for line in lines do
            if line.TrimStart(' ').StartsWith "//" then
                line.TrimStart(' ', '/') |]
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

Im folgenden Beispiel wird dann ein Aufruf der StripComments-Methode veranschaulicht.

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.
let lines = 
    [| "module HelloWorld"
       ""
       "[<EntryPoint>]"
       "let main _ ="
       "    // This code displays a simple greeting"
       "    // to the console."
       "    printfn \"Hello, World.\""
       "    0" |]
printfn "Before call to StripComments:"
for line in lines do
    printfn $"   {line}"

let strippedLines = stripComments lines
printfn "After call to StripComments:"
for line in strippedLines do
    printfn $"   {line}"
// This code produces the following output to the console:
//    Before call to StripComments:
//       module HelloWorld
//
//       [<EntryPoint>]
//       let main _ =
//           // This code displays a simple greeting
//           // to the console.
//           printfn "Hello, World."
//           0
//    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.

Hinweise

Die TrimStart(System.Char[])-Methode entfernt aus der aktuellen Zeichenfolge alle führenden Zeichen, die sich im trimChars-Parameter befinden. Der Kürzungsvorgang wird beendet, wenn ein Zeichen gefunden wird, das sich nicht in trimChars befindet. Wenn die aktuelle Zeichenfolge beispielsweise "123abc456xyz789" lautet und trimChars die Ziffern von "1" bis "9" enthält, gibt die TrimStart(System.Char[])-Methode "abc456xyz789" zurück.

Anmerkung

Wenn die TrimStart(System.Char[])-Methode Zeichen aus der aktuellen Instanz entfernt, ändert diese Methode nicht den Wert der aktuellen Instanz. Stattdessen wird eine neue Zeichenfolge zurückgegeben, in der alle führenden Zeichen, die sich im parameter trimChars befinden, in der aktuellen Instanz entfernt werden.

Hinweise für Aufrufer

In .NET Framework 3.5 SP1 und früheren Versionen wird eine interne Liste von Leerzeichen verwaltet, die von dieser Methode gekürzt werden, wenn trimCharsnull oder ein leeres Array ist. Ab .NET Framework 4 werden bei trimCharsnull oder einem leeren Array alle Unicode-Leerzeichen gekürzt (d. h. Zeichen, die einen true Rückgabewert erzeugen, wenn sie an die IsWhiteSpace(Char) Methode übergeben werden). Aufgrund dieser Änderung entfernt die Trim()-Methode in .NET Framework 3.5 SP1 und früheren Versionen zwei Zeichen, NULL WIDTH SPACE (U+200B) und NULL WIDTH NO-BREAK SPACE (U+FEFF), die die Trim()-Methode in .NET Framework 4 und höheren Versionen nicht entfernt. Darüber hinaus werden mit der Trim()-Methode in .NET Framework 3.5 SP1 und früheren Versionen drei Unicode-Leerzeichen nicht gekürzt: MONGOLN VOWEL SEPARATOR (U+180E), NARROW NO-BREAK SPACE (U+202F) und MITTLERE MATHEMATISCHE LEERZEICHEN (U+205F).

Weitere Informationen

Gilt für: