Condividi tramite


String.TrimStart Metodo

Definizione

Overload

TrimStart(ReadOnlySpan<Char>)

Rimuove tutte le occorrenze iniziali di un set di caratteri specificato in un intervallo dalla stringa corrente.

TrimStart()

Rimuove tutti gli spazi vuoti iniziali dalla stringa corrente.

TrimStart(Char)

Rimuove tutte le occorrenze iniziali di un carattere specificato dalla stringa corrente.

TrimStart(Char[])

Rimuove tutte le occorrenze iniziali di un set di caratteri specificato in una matrice dalla stringa corrente.

TrimStart(ReadOnlySpan<Char>)

Rimuove tutte le occorrenze iniziali di un set di caratteri specificato in un intervallo dalla stringa corrente.

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

Parametri

trimChars
ReadOnlySpan<Char>

Intervallo di caratteri Unicode da rimuovere.

Restituisce

Stringa che rimane dopo tutte le occorrenze di caratteri nel parametro trimChars vengono rimosse dall'inizio della stringa corrente. Se trimChars è vuoto, vengono rimossi spazi vuoti. Se non è possibile tagliare caratteri dall'istanza corrente, il metodo restituisce l'istanza corrente invariata.

Si applica a

TrimStart()

Origine:
String.Manipulation.cs
Origine:
String.Manipulation.cs
Origine:
String.Manipulation.cs

Rimuove tutti gli spazi vuoti iniziali dalla stringa corrente.

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

Restituisce

Stringa che rimane dopo che tutti gli spazi vuoti vengono rimossi dall'inizio della stringa corrente. Se non è possibile tagliare caratteri dall'istanza corrente, il metodo restituisce l'istanza corrente invariata.

Commenti

Il metodo TrimStart rimuove dalla stringa corrente tutti gli spazi vuoti iniziali. L'operazione di taglio si arresta quando viene rilevato un carattere non vuoto. Ad esempio, se la stringa corrente è " abc xyz ", il metodo TrimStart restituisce "abc xyz".

Nota

Se il metodo TrimStart rimuove tutti i caratteri dall'istanza corrente, questo metodo non modifica il valore dell'istanza corrente. Restituisce invece una nuova stringa in cui vengono rimossi tutti gli spazi vuoti iniziali presenti nell'istanza corrente.

Si applica a

TrimStart(Char)

Origine:
String.Manipulation.cs
Origine:
String.Manipulation.cs
Origine:
String.Manipulation.cs

Rimuove tutte le occorrenze iniziali di un carattere specificato dalla stringa corrente.

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

Parametri

trimChar
Char

Carattere Unicode da rimuovere.

Restituisce

Stringa che rimane dopo tutte le occorrenze del carattere trimChar vengono rimosse dall'inizio della stringa corrente. Se non è possibile tagliare caratteri dall'istanza corrente, il metodo restituisce l'istanza corrente invariata.

Commenti

Il metodo TrimStart(System.Char) rimuove dalla stringa corrente tutti i caratteri trimChar iniziali. L'operazione di taglio si arresta quando viene rilevato un carattere non trimChar. Ad esempio, se trimChar è - e la stringa corrente è "---abc---xyz----", il metodo TrimStart(System.Char) restituisce "abc---xyz----".

Nota

Se il metodo TrimStart(System.Char) rimuove tutti i caratteri dall'istanza corrente, questo metodo non modifica il valore dell'istanza corrente. Restituisce invece una nuova stringa in cui vengono rimossi tutti i caratteri trimChar iniziali trovati nell'istanza corrente.

Si applica a

TrimStart(Char[])

Origine:
String.Manipulation.cs
Origine:
String.Manipulation.cs
Origine:
String.Manipulation.cs

Rimuove tutte le occorrenze iniziali di un set di caratteri specificato in una matrice dalla stringa corrente.

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

Parametri

trimChars
Char[]

Matrice di caratteri Unicode da rimuovere o null.

Restituisce

Stringa che rimane dopo tutte le occorrenze di caratteri nel parametro trimChars vengono rimosse dall'inizio della stringa corrente. Se trimChars è null o una matrice vuota, vengono rimossi spazi vuoti. Se non è possibile tagliare caratteri dall'istanza corrente, il metodo restituisce l'istanza corrente invariata.

Esempio

Nell'esempio seguente viene illustrata la funzionalità di base del metodo TrimStart:

// 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

Nell'esempio seguente viene utilizzato il metodo TrimStart per tagliare spazi vuoti e caratteri di commento da righe di codice sorgente. Il metodo StripComments esegue il wrapping di una chiamata a TrimStart e lo passa a una matrice di caratteri che contiene uno spazio e il carattere di commento, che è un apostrofo ( ' ) in Visual Basic e una barra ( / ) in C# o F#. Il metodo TrimStart viene chiamato anche per rimuovere lo spazio vuoto iniziale quando si valuta se una stringa è un commento.

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

Nell'esempio seguente viene quindi illustrata una chiamata al metodo StripComments.

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.

Commenti

Il metodo TrimStart(System.Char[]) rimuove dalla stringa corrente tutti i caratteri iniziali presenti nel parametro trimChars. L'operazione di taglio si arresta quando viene rilevato un carattere non incluso in trimChars. Ad esempio, se la stringa corrente è "123abc456xyz789" e trimChars contiene le cifre da "1" a "9", il metodo TrimStart(System.Char[]) restituisce "abc456xyz789".

Nota

Se il metodo TrimStart(System.Char[]) rimuove tutti i caratteri dall'istanza corrente, questo metodo non modifica il valore dell'istanza corrente. Restituisce invece una nuova stringa in cui vengono rimossi tutti i caratteri iniziali presenti nel parametro trimChars trovato nell'istanza corrente.

Note per i chiamanti

.NET Framework 3.5 SP1 e versioni precedenti mantiene un elenco interno di caratteri di spazio vuoto che questo metodo taglia se trimChars è null o una matrice vuota. A partire da .NET Framework 4, se trimChars è null o una matrice vuota, il metodo taglia tutti i caratteri di spazio vuoto Unicode( ovvero i caratteri che producono un valore restituito true quando vengono passati al metodo IsWhiteSpace(Char)). A causa di questa modifica, il metodo Trim() in .NET Framework 3.5 SP1 e versioni precedenti rimuove due caratteri, ZERO WIDTH SPACE (U+200B) e ZERO WIDTH NO-BREAK SPACE (U+FEFF), che il metodo Trim() in .NET Framework 4 e versioni successive non rimuove. Inoltre, il metodo Trim() in .NET Framework 3.5 SP1 e versioni precedenti non taglia tre caratteri di spazio vuoto Unicode: SEPARATORE VOCALE MONGOLO (U+180E), NARROW NO-BREAK SPACE (U+202F) e SPAZIO MATEMATICO MEDIO (U+205F).

Vedi anche

Si applica a