Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Jeśli analizujesz zdanie w pojedynczych słowach, możesz skończyć się wyrazami, które mają puste spacje (nazywane również białymi spacjami) na każdym końcu słowa. W takiej sytuacji można użyć jednej z metod trim w klasie System.String
, aby usunąć dowolną liczbę spacji lub innych znaków z określonej pozycji w ciągu. W poniższej tabeli opisano dostępne metody przycinania:
Nazwa metody | Użyj |
---|---|
String.Trim | Usuwa białe spacje lub znaki określone w tablicy znaków od początku i na końcu ciągu. |
String.TrimEnd | Usuwa znaki określone w tablicy znaków z końca ciągu. |
String.TrimStart | Usuwa znaki określone w tablicy znaków od początku ciągu. |
String.Remove | Usuwa określoną liczbę znaków z określonej pozycji indeksu w ciągu. |
Przyciąć
Można łatwo usunąć białe spacje z obu końców ciągu przy użyciu metody String.Trim, jak pokazano w poniższym przykładzie:
string MyString = " Big ";
Console.WriteLine($"Hello{MyString}World!");
string TrimString = MyString.Trim();
Console.WriteLine($"Hello{TrimString}World!");
// The example displays the following output:
// Hello Big World!
// HelloBigWorld!
Dim MyString As String = " Big "
Console.WriteLine("Hello{0}World!", MyString)
Dim TrimString As String = MyString.Trim()
Console.WriteLine("Hello{0}World!", TrimString)
' The example displays the following output:
' Hello Big World!
' HelloBigWorld!
Można również usunąć znaki określone w tablicy znaków od początku i końca ciągu. Poniższy przykład usuwa znaki odstępu, kropki i gwiazdki:
using System;
public class Example
{
public static void Main()
{
String header = "* A Short String. *";
Console.WriteLine(header);
Console.WriteLine(header.Trim( new Char[] { ' ', '*', '.' } ));
}
}
// The example displays the following output:
// * A Short String. *
// A Short String
Module Example
Public Sub Main()
Dim header As String = "* A Short String. *"
Console.WriteLine(header)
Console.WriteLine(header.Trim({" "c, "*"c, "."c}))
End Sub
End Module
' The example displays the following output:
' * A Short String. *
' A Short String
Metoda TrimEnd
Metoda String.TrimEnd
usuwa znaki z końca ciągu, tworząc nowy obiekt ciągu. Tablica znaków jest przekazywana do tej metody w celu określenia znaków, które mają zostać usunięte. Kolejność elementów w tablicy znaków nie ma wpływu na operację przycinania. Przycinanie zatrzymuje się, gdy zostanie znaleziony znak, który nie został określony w tablicy.
Poniższy przykład usuwa ostatnie litery ciągu przy użyciu metody TrimEnd
. W tym przykładzie pozycja znaku 'r'
i znaku 'W'
są odwrócone, aby zilustrować, że kolejność znaków w tablicy nie ma znaczenia. Zwróć uwagę, że ten kod usuwa ostatnie słowo MyString
plus część pierwszego.
string MyString = "Hello World!";
char[] MyChar = {'r','o','W','l','d','!',' '};
string NewString = MyString.TrimEnd(MyChar);
Console.WriteLine(NewString);
Dim MyString As String = "Hello World!"
Dim MyChar() As Char = {"r", "o", "W", "l", "d", "!", " "}
Dim NewString As String = MyString.TrimEnd(MyChar)
Console.WriteLine(NewString)
Ten kod wyświetla He
na konsolę.
Poniższy przykład usuwa ostatnie słowo ciągu przy użyciu metody TrimEnd
. W tym kodzie przecinek następuje po słowie Hello
, a ponieważ przecinek nie jest określony w tablicy znaków do trimowania, trimowanie kończy się na przecinku.
string MyString = "Hello, World!";
char[] MyChar = {'r','o','W','l','d','!',' '};
string NewString = MyString.TrimEnd(MyChar);
Console.WriteLine(NewString);
Dim MyString As String = "Hello, World!"
Dim MyChar() As Char = {"r", "o", "W", "l", "d", "!", " "}
Dim NewString As String = MyString.TrimEnd(MyChar)
Console.WriteLine(NewString)
Ten kod wyświetla Hello,
na konsolę.
TrymStart
Metoda String.TrimStart
jest podobna do metody String.TrimEnd
, z tą różnicą, że tworzy nowy ciąg, usuwając znaki od początku istniejącego obiektu ciągu. Tablica znaków jest przekazywana do metody TrimStart
w celu określenia znaków do usunięcia. Podobnie jak w przypadku metody TrimEnd
kolejność elementów w tablicy znaków nie ma wpływu na operację przycinania. Przycinanie zatrzymuje się, gdy zostanie znaleziony znak, który nie został określony w tablicy.
Poniższy przykład usuwa pierwsze słowo ciągu. W tym przykładzie pozycja znaku 'l'
i znaku 'H'
są odwrócone, aby zilustrować, że kolejność znaków w tablicy nie ma znaczenia.
string MyString = "Hello World!";
char[] MyChar = {'e', 'H','l','o',' ' };
string NewString = MyString.TrimStart(MyChar);
Console.WriteLine(NewString);
Dim MyString As String = "Hello World!"
Dim MyChar() As Char = {"e", "H", "l", "o", " "}
Dim NewString As String = MyString.TrimStart(MyChar)
Console.WriteLine(NewString)
Ten kod wyświetla World!
na konsolę.
Usuń
Metoda String.Remove usuwa określoną liczbę znaków rozpoczynających się od określonej pozycji w istniejącym ciągu. Metoda zakłada indeksowanie zaczynające się od zera.
Poniższy przykład usuwa 10 znaków z ciągu, zaczynając od pozycji piątej w zerowym indeksie.
string MyString = "Hello Beautiful World!";
Console.WriteLine(MyString.Remove(5,10));
// The example displays the following output:
// Hello World!
Dim MyString As String = "Hello Beautiful World!"
Console.WriteLine(MyString.Remove(5, 10))
' The example displays the following output:
' Hello World!
Zamień
Można również usunąć określony znak lub podciąg z ciągu, wywołując metodę String.Replace(String, String) i określając pusty ciąg (String.Empty) jako zamianę. Poniższy przykład usuwa wszystkie przecinki z ciągu:
using System;
public class Example
{
public static void Main()
{
String phrase = "a cold, dark night";
Console.WriteLine($"Before: {phrase}");
phrase = phrase.Replace(",", "");
Console.WriteLine($"After: {phrase}");
}
}
// The example displays the following output:
// Before: a cold, dark night
// After: a cold dark night
Module Example
Public Sub Main()
Dim phrase As String = "a cold, dark night"
Console.WriteLine("Before: {0}", phrase)
phrase = phrase.Replace(",", "")
Console.WriteLine("After: {0}", phrase)
End Sub
End Module
' The example displays the following output:
' Before: a cold, dark night
' After: a cold dark night