В C# пробельные символы представлены пробелом, табуляцией, новой строкой, возвратом каретки и другими подобными символами. Удаление пробелов из строки — обычная задача при работе со строками, особенно при работе с пользовательским вводом, обработкой файлов и анализом данных. В этой статье рассматриваются различные методы удаления пробелов из строки в C#.
Что такое пробелы?
Пробелы — это символы, которые представляют пустые или пустые места в текстовой строке. Обычно они используются для разделения слов и других элементов текста, а также для улучшения удобочитаемости и внешнего вида текста.
В программировании пробелы охватывают такие символы, как пробелы, табуляции, новые строки и возврат каретки. Во многих языках программирования пробелы игнорируются или рассматриваются как незначительные при обработке или интерпретации кода, но они могут влиять на макет, форматирование и синтаксис кода.
Как удалить пробелы в строке
Удаление пробелов или манипулирование ими — обычная задача при обработке строк и манипулировании текстом. Нормализация или стандартизация ввода текста часто требует удаления или замены пробелов. Чтобы удалить ненужные символы, которые могут повлиять на функциональность кода или точность данных, или повысить эффективность и читабельность кода, вот некоторые из них:
1: Использование метода String.Replace()
Чтобы удалить пробелы из строки простым способом, можно использовать метод String.Replace(). В этом сценарии мы можем указать символ пробела « » в качестве старого значения и пустую строку «» в качестве нового значения. При этом все пробелы в строке будут эффективно удалены.
с помощью системы;
класс
{
статическая пустота Главная ( нить [ ] аргументы )
{
исходная строкаString = 'Здравствуй, Сэм!' ;
строка trimmedString = originalString.Replace ( ' ' , '' ) ;
Console.WriteLine ( обрезанная строка ) ;
}
}
Эта программа включает оператор using, который импортирует пространство имен System, необходимое для использования класса Console для консольного ввода и вывода.
В методе Main мы инициализируем строковую переменную с именем originalString со значением «Привет, Сэм!».
Затем мы объявляем еще одну строковую переменную с именем trimmedString и присваиваем ей результат вызова метода Replace() для originalString. Заменять() метод вызывается с двумя аргументами: первый аргумент представляет собой старую подстроку, которую мы хотим заменить, которая в данном случае является символом одиночного пробела ' ', а второй аргумент означает новую подстроку, которой мы хотим ее заменить, а именно пустую строку. “”.
2: Использование метода String.Join()
Другой способ удалить пробелы из строки — разбить строку на массив подстрок с помощью метода String.Split(), а затем снова соединить подстроки вместе с помощью метода String.Split(). Строка.Присоединиться() метод. Чтобы исключить любые пустые подстроки, которые могут возникнуть из-за последовательных пробелов, мы можем использовать параметр StringSplitOptions.RemoveEmptyEntries.
с помощью системы;класс
{
статическая пустота Главная ( нить [ ] аргументы )
{
исходная строкаString = 'Здравствуй, Сэм!' ;
нить [ ] подстроки = originalString.Split ( новый символ [ ] { ' ' } , StringSplitOptions.RemoveEmptyEntries ) ;
строка trimmedString = String.Join ( '' , подстроки ) ;
Console.WriteLine ( обрезанная строка ) ;
}
}
В этом коде есть объявление строковой переменной с именем «originalString», и она инициализируется значением «Привет, Сэм!» а затем разбивается на массив подстрок с использованием пробела в качестве разделителя. Параметр RemoveEmptyEntries используется для исключения любых пустых подстрок из результирующего массива.
Впоследствии код использует Строка.Присоединиться() метод для объединения непустых подстрок в единую строку, используя пустую строку в качестве разделителя.
Наконец, код использует Console.WriteLine для отображения обрезанной строки в окне консоли. После выполнения этого кода вы можете увидеть вывод «Hello, Sam!» печатается на консоли.
3: Использование регулярных выражений
Регулярные выражения предоставляют мощный способ сопоставления и замены шаблонов в строках. Используя Регулярное выражение.Заменить() метод, мы можем эффективно удалить все пробельные символы из строки.
с помощью системы;используя System.Text.RegularExpressions;
пробел в классе
{
статическая пустота Главная ( нить [ ] аргументы )
{
исходная строкаString = 'Здравствуй, Сэм!' ;
string trimmedString = Regex.Replace ( оригиналСтрока, @ '\с+' , '' ) ;
Console.WriteLine ( обрезанная строка ) ; '
}
}
В этом коде строковая переменная с именем originalString объявляется и инициализируется значением «Привет, Сэм!». Затем код использует метод Regex.Replace() для замены одного или нескольких пробельных символов (представленных регулярным выражением \s+) пустой строкой.
Наконец, код использует Console.WriteLine() для вывода обрезанной строки в окно консоли, и когда вы запустите эту программу, вы увидите вывод «Hello, Sam!» печатается на консоли.
В этом конкретном примере шаблон регулярного выражения @”\s+” используется для сопоставления одного или нескольких пробельных символов (включая пробелы, символы табуляции и символы новой строки) и впоследствии заменяет их пустой строкой.
4: Использование LINQ
Мы также можем удалить пробелы из строки с помощью LINQ. Мы можем использовать метод Where(), чтобы отфильтровать символы пробела, а затем снова соединить оставшиеся символы, используя метод Строка.Конкат() метод.
с помощью системы;с помощью System.Linq;
пробел в классе
{
статическая пустота Главная ( нить [ ] аргументы )
{
исходная строкаString = 'Здравствуй, Сэм!' ;
string trimmedString = новая строка ( originalString.Где ( с = > ! char.IsWhiteSpace ( с ) ) .ToArray ( ) ) ;
Console.WriteLine ( обрезанная строка ) ;
}
}
В этом фрагменте кода строковая переменная с именем «originalString» объявляется и инициализируется значением «Привет, Сэм! “. Затем он создает новую строковую переменную с именем trimmedString, используя выражение LINQ, которое отфильтровывает любые пробельные символы из исходной строки. Метод расширения Where() используется для фильтрации символов, а полученные символы преобразуются в массив и передаются конструктору новой строки для создания новой строки.
Наконец, код использует Console.WriteLine() для вывода обрезанной строки в окно консоли. После выполнения этого кода вы можете ожидать вывод «Hello, Sam!» отображается на консоли.
Заключение
В C# существуют различные методы удаления пробелов из строки: метод String.Replace(), метод String.Join(), использование регулярных выражений и использование LINQ. Крайне важно выбрать эффективный, надежный и понятный метод, обеспечивающий простоту обслуживания и удобочитаемость.