Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Если вы анализируете предложение на отдельные слова, вы можете в конечном итоге иметь пустые пробелы (также называемые пробелами) в любом конце слова. В этой ситуации можно использовать один из методов обрезки в System.String
классе, чтобы удалить любое количество пробелов или других символов из указанной позиции в строке. В следующей таблице описаны доступные методы обрезки:
Имя метода | Использование |
---|---|
String.Trim | Удаляет пробелы или символы, указанные в массиве символов из начала и конца строки. |
String.TrimEnd | Удаляет символы, указанные в массиве символов, из конца строки. |
String.TrimStart | Удаляет символы, указанные в массиве символов в начале строки. |
String.Remove | Удаляет указанное число символов из указанной позиции индекса в строке. |
Подстригать
Вы можете легко удалить пробелы из обеих сторон строки с помощью String.Trim метода, как показано в следующем примере:
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!
Вы также можете удалить символы, указанные в массиве символов, с начала и конца строки. В следующем примере удаляются символы пробела, точки и звездочки:
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
ТримЭнд
Метод String.TrimEnd
удаляет символы из конца строки, создавая новый объект строки. Массив символов передается этому методу, чтобы указать символы, которые нужно удалить. Порядок элементов в массиве символов не влияет на операцию обрезки. Обрезка останавливается при обнаружении символа, не указанного в массиве.
В следующем примере удаляются последние буквы строки с помощью TrimEnd
метода. В этом примере позиция символа 'r'
и 'W'
символа обратно иллюстрируют, что порядок символов в массиве не имеет значения. Обратите внимание, что этот код удаляет последнее слово MyString
плюс первой части.
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)
Этот код отображается He
в консоли.
В следующем примере удаляется последнее слово строки с помощью TrimEnd
метода. В этом коде запятая следует слову Hello
, и потому что запятая не указана в массиве символов для обрезки, обрезка заканчивается запятой.
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)
Этот код отображается Hello,
в консоли.
ТримСтарт
Метод String.TrimStart
аналогичен String.TrimEnd
методу, за исключением того, что он создает новую строку, удаляя символы с начала существующего объекта строки. Массив символов передается TrimStart
методу, чтобы указать символы, которые нужно удалить. Как и в случае с методом TrimEnd
, порядок элементов в массиве символов не влияет на операцию обрезки. Обрезка останавливается при обнаружении символа, не указанного в массиве.
В следующем примере удаляется первое слово строки. В этом примере позиция символа 'l'
и 'H'
символа обратно иллюстрируют, что порядок символов в массиве не имеет значения.
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)
Этот код отображается World!
в консоли.
Удалить
Метод String.Remove удаляет указанное число символов, начинающихся с указанной позиции в существующей строке. Этот метод предполагает отсчитываемый от нуля индекс.
В следующем примере из строки удаляется 10 символов, начиная с позиции пяти из отсчитываемого от нуля индекса строки.
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!
Заменить
Можно также удалить указанный символ или подстроку из строки, вызвав String.Replace(String, String) метод и указав пустую строку (String.Empty) в качестве замены. В следующем примере удаляются все запятые из строки:
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