Číst v angličtině

Sdílet prostřednictvím


String.TrimStart Metoda

Definice

Přetížení

TrimStart(ReadOnlySpan<Char>)

Odebere všechny počáteční výskyty sady znaků zadané v rozsahu z aktuálního řetězce.

TrimStart()

Odebere z aktuálního řetězce všechny počáteční prázdné znaky.

TrimStart(Char)

Odebere všechny počáteční výskyty zadaného znaku z aktuálního řetězce.

TrimStart(Char[])

Odebere všechny počáteční výskyty sady znaků zadané v poli z aktuálního řetězce.

TrimStart(ReadOnlySpan<Char>)

Odebere všechny počáteční výskyty sady znaků zadané v rozsahu z aktuálního řetězce.

public string TrimStart (scoped ReadOnlySpan<char> trimChars);

Parametry

trimChars
ReadOnlySpan<Char>

Rozsah znaků Unicode, které chcete odebrat.

Návraty

Řetězec, který zůstane po všech výskytech znaků v parametru trimChars, se odebere ze začátku aktuálního řetězce. Pokud je trimChars prázdný, odeberou se prázdné znaky. Pokud nelze oříznout žádné znaky z aktuální instance, vrátí metoda aktuální instanci beze změny.

Platí pro

TrimStart()

Zdroj:
String.Manipulation.cs
Zdroj:
String.Manipulation.cs
Zdroj:
String.Manipulation.cs

Odebere z aktuálního řetězce všechny počáteční prázdné znaky.

public string TrimStart ();

Návraty

Řetězec, který zůstane po odebrání všech prázdných znaků od začátku aktuálního řetězce. Pokud nelze oříznout žádné znaky z aktuální instance, vrátí metoda aktuální instanci beze změny.

Poznámky

Metoda TrimStart odebere z aktuálního řetězce všechny počáteční prázdné znaky. Operace oříznutí se zastaví, když dojde k prázdnému znaku. Pokud je například aktuální řetězec " abc xyz ", metoda TrimStart vrátí "abc xyz ".

Poznámka

Pokud metoda TrimStart odebere všechny znaky z aktuální instance, tato metoda nezmění hodnotu aktuální instance. Místo toho vrátí nový řetězec, ve kterém jsou odebrány všechny počáteční prázdné znaky nalezené v aktuální instanci.

Platí pro

TrimStart(Char)

Zdroj:
String.Manipulation.cs
Zdroj:
String.Manipulation.cs
Zdroj:
String.Manipulation.cs

Odebere všechny počáteční výskyty zadaného znaku z aktuálního řetězce.

public string TrimStart (char trimChar);

Parametry

trimChar
Char

Znak Unicode, který chcete odebrat.

Návraty

Řetězec, který zůstane po všech výskytech znaku trimChar, se odebere ze začátku aktuálního řetězce. Pokud nelze oříznout žádné znaky z aktuální instance, vrátí metoda aktuální instanci beze změny.

Poznámky

Metoda TrimStart(System.Char) odebere z aktuálního řetězce všechny počáteční trimChar znaky. Operace oříznutí se zastaví, když dojde k chybě znaku, který není trimChar. Pokud je například trimChar- a aktuální řetězec je "---abc---xyz----", metoda TrimStart(System.Char) vrátí "abc---xyz----".

Poznámka

Pokud metoda TrimStart(System.Char) odebere všechny znaky z aktuální instance, tato metoda nezmění hodnotu aktuální instance. Místo toho vrátí nový řetězec, ve kterém jsou odebrány všechny počáteční trimChar znaky nalezené v aktuální instanci.

Platí pro

TrimStart(Char[])

Zdroj:
String.Manipulation.cs
Zdroj:
String.Manipulation.cs
Zdroj:
String.Manipulation.cs

Odebere všechny počáteční výskyty sady znaků zadané v poli z aktuálního řetězce.

public string TrimStart (params char[] trimChars);
public string TrimStart (params char[]? trimChars);

Parametry

trimChars
Char[]

Pole znaků Unicode k odebrání nebo null.

Návraty

Řetězec, který zůstane po všech výskytech znaků v parametru trimChars, se odebere ze začátku aktuálního řetězce. Pokud je trimCharsnull nebo prázdné pole, odeberou se prázdné znaky. Pokud nelze oříznout žádné znaky z aktuální instance, vrátí metoda aktuální instanci beze změny.

Příklady

Následující příklad ukazuje základní funkce TrimStart metody:

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

Následující příklad používá metodu TrimStart k oříznutí prázdných znaků a komentářů z řádků zdrojového kódu. Metoda StripComments zabalí volání TrimStart a předá mu pole znaků, které obsahuje mezeru a znak komentáře, což je apostrof (' ) v jazyce Visual Basic a lomítko ( / ) v jazyce C# nebo F#. Metoda TrimStart je volána také k odebrání počáteční prázdné mezery při vyhodnocování, zda je řetězec komentář.

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();
}

Následující příklad pak ilustruje volání StripComments metody.

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.

Poznámky

Metoda TrimStart(System.Char[]) odebere z aktuálního řetězce všechny počáteční znaky, které jsou v parametru trimChars. Operace oříznutí se zastaví, když dojde k chybě znaku, který není v trimChars. Pokud je například aktuální řetězec "123abc456xyz789" a trimChars obsahuje číslice od "1" do "9", vrátí metoda TrimStart(System.Char[]) "abc456xyz789".

Poznámka

Pokud metoda TrimStart(System.Char[]) odebere všechny znaky z aktuální instance, tato metoda nezmění hodnotu aktuální instance. Místo toho vrátí nový řetězec, ve kterém se odeberou všechny úvodní znaky v parametru trimChars nalezené v aktuální instanci.

Poznámky pro volající

Rozhraní .NET Framework 3.5 SP1 a starší verze udržuje interní seznam prázdných znaků, které tato metoda oříznou, pokud je trimCharsnull nebo prázdné pole. Počínaje rozhraním .NET Framework 4, pokud je trimCharsnull nebo prázdné pole, metoda ořízne všechny znaky prázdného znaku Unicode (tj. znaky, které vytvářejí true návratovou hodnotu při jejich předání metodě IsWhiteSpace(Char)). Z důvodu této změny odebere metoda Trim() v rozhraní .NET Framework 3.5 SP1 a starších verzích dva znaky, MEZERA S NULOVOU ŠÍŘKOU (U+200B) a NULOVÁ ŠÍŘKA NO-BREAK MEZERA (U+FEFF), že metoda Trim() v rozhraní .NET Framework 4 a novějších verzích neodebere. Kromě toho Trim() metoda v rozhraní .NET Framework 3.5 SP1 a starších verzích neořízne tři znaky prázdné znaky Unicode: MONGOLN VOWEL SEPARATOR (U+180E), NARROW NO-BREAK SPACE (U+202F) a STŘEDNÍ MATEMATICKÝ PROSTOR (U+205F).

Viz také

Platí pro