String.TrimStart Método

Definición

Sobrecargas

TrimStart(ReadOnlySpan<Char>)

Quita todas las apariciones iniciales de un conjunto de caracteres especificados en un intervalo de la cadena actual.

TrimStart()

Quita todos los caracteres de espacio en blanco iniciales de la cadena actual.

TrimStart(Char)

Quita todas las apariciones iniciales de un carácter especificado de la cadena actual.

TrimStart(Char[])

Quita todas las apariciones iniciales de un conjunto de caracteres especificados en una matriz de la cadena actual.

TrimStart(ReadOnlySpan<Char>)

Quita todas las apariciones iniciales de un conjunto de caracteres especificados en un intervalo de la cadena actual.

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

Parámetros

trimChars
ReadOnlySpan<Char>

Intervalo de caracteres Unicode que se van a quitar.

Devoluciones

La cadena que permanece después de todas las apariciones de caracteres del parámetro trimChars se quita del inicio de la cadena actual. Si trimChars está vacío, los caracteres de espacio en blanco se quitan en su lugar. Si no se puede recortar ningún carácter de la instancia actual, el método devuelve la instancia actual sin cambios.

Se aplica a

TrimStart()

Source:
String.Manipulation.cs
Source:
String.Manipulation.cs
Source:
String.Manipulation.cs

Quita todos los caracteres de espacio en blanco iniciales de la cadena actual.

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

Devoluciones

Cadena que permanece después de quitar todos los caracteres de espacio en blanco del inicio de la cadena actual. Si no se puede recortar ningún carácter de la instancia actual, el método devuelve la instancia actual sin cambios.

Comentarios

El método TrimStart quita de la cadena actual todos los caracteres de espacio en blanco iniciales. La operación de recorte se detiene cuando se encuentra un carácter que no es de espacio en blanco. Por ejemplo, si la cadena actual es " abc xyz ", el método TrimStart devuelve "abc xyz ".

Nota

Si el método TrimStart quita los caracteres de la instancia actual, este método no modifica el valor de la instancia actual. En su lugar, devuelve una nueva cadena en la que se quitan todos los caracteres de espacio en blanco iniciales que se encuentran en la instancia actual.

Se aplica a

TrimStart(Char)

Source:
String.Manipulation.cs
Source:
String.Manipulation.cs
Source:
String.Manipulation.cs

Quita todas las apariciones iniciales de un carácter especificado de la cadena actual.

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

Parámetros

trimChar
Char

Carácter Unicode que se va a quitar.

Devoluciones

La cadena que permanece después de todas las apariciones del carácter trimChar se quita del inicio de la cadena actual. Si no se puede recortar ningún carácter de la instancia actual, el método devuelve la instancia actual sin cambios.

Comentarios

El método TrimStart(System.Char) quita de la cadena actual todos los caracteres trimChar iniciales. La operación de recorte se detiene cuando se encuentra un carácter que no es trimChar. Por ejemplo, si trimChar es - y la cadena actual es "---abc---xyz----", el método TrimStart(System.Char) devuelve "abc---xyz----".

Nota

Si el método TrimStart(System.Char) quita los caracteres de la instancia actual, este método no modifica el valor de la instancia actual. En su lugar, devuelve una nueva cadena en la que se quitan todos los caracteres de trimChar iniciales que se encuentran en la instancia actual.

Se aplica a

TrimStart(Char[])

Source:
String.Manipulation.cs
Source:
String.Manipulation.cs
Source:
String.Manipulation.cs

Quita todas las apariciones iniciales de un conjunto de caracteres especificados en una matriz de la cadena actual.

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

Parámetros

trimChars
Char[]

Matriz de caracteres Unicode que se van a quitar o null.

Devoluciones

La cadena que permanece después de todas las apariciones de caracteres del parámetro trimChars se quita del inicio de la cadena actual. Si trimChars es null o una matriz vacía, los caracteres de espacio en blanco se quitan en su lugar. Si no se puede recortar ningún carácter de la instancia actual, el método devuelve la instancia actual sin cambios.

Ejemplos

En el ejemplo siguiente se muestra la funcionalidad básica del método 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

En el ejemplo siguiente se usa el método TrimStart para recortar los espacios en blanco y los caracteres de comentario de líneas de código fuente. El método StripComments ajusta una llamada a TrimStart y lo pasa una matriz de caracteres que contiene un espacio y el carácter de comentario, que es un apóstrofo ( ' ) en Visual Basic y una barra diagonal ( / ) en C# o F#. También se llama al método TrimStart para quitar el espacio en blanco inicial al evaluar si una cadena es un comentario.

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

A continuación, en el ejemplo siguiente se muestra una llamada al método 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.

Comentarios

El método TrimStart(System.Char[]) quita de la cadena actual todos los caracteres iniciales que se encuentran en el parámetro trimChars. La operación de recorte se detiene cuando se encuentra un carácter que no está en trimChars. Por ejemplo, si la cadena actual es "123abc456xyz789" y trimChars contiene los dígitos de "1" a "9", el método TrimStart(System.Char[]) devuelve "abc456xyz789".

Nota

Si el método TrimStart(System.Char[]) quita los caracteres de la instancia actual, este método no modifica el valor de la instancia actual. En su lugar, devuelve una nueva cadena en la que se quitan todos los caracteres iniciales que se encuentran en el parámetro trimChars que se encuentra en la instancia actual.

Notas a los autores de las llamadas

.NET Framework 3.5 SP1 y versiones anteriores mantienen una lista interna de caracteres de espacio en blanco que este método recorta si trimChars es null o una matriz vacía. A partir de .NET Framework 4, si trimChars es null o una matriz vacía, el método recorta todos los caracteres de espacio en blanco Unicode (es decir, caracteres que generan un valor devuelto true cuando se pasan al método IsWhiteSpace(Char)). Debido a este cambio, el método Trim() en .NET Framework 3.5 SP1 y versiones anteriores quita dos caracteres, ZERO WIDTH SPACE (U+200B) y ZERO WIDTH NO-BREAK SPACE (U+FEFF), que el método Trim() en .NET Framework 4 y versiones posteriores no quita. Además, el método Trim() en .NET Framework 3.5 SP1 y versiones anteriores no recorta tres caracteres de espacio en blanco Unicode: SEPARADOR DE VOWEL MONGOLIAN (U+180E), NARROW NO-BREAK SPACE (U+202F) y ESPACIO MATEMÁTICO MEDIO (U+205F).

Consulte también

Se aplica a