В C# существует множество подпрограмм для работы со строками. Многие из них вызываются с помощью точечной нотации и называются методами. Полный список методов работы со строками можно найти в Интернете.
Познакомимся с парой самых простых и полезных из них.
string s = "aAbBcC11"
string sUp = s.ToUpper() // sUp = "AABBCC11" - метод, который переводит каждый символ строки в верхний регистр
string sLow = s.ToLower() // sLow = "aabbcc11" - метод, который переводит каждый символ строки в нижний регистр
Слева от точки записывается имя строки (или сама строка в кавычках), к которой нужно применить метод, а справа от точки - название метода. Метод всегда записывается с круглыми скобками. Внутри скобок могут идти какие-либо параметры, если они необходимы.
|
Чтобы в C# выполнить поиск в строке, используются методы IndexOfAny(Char[]) и LastIndexOfAny(Char[]);
IndexOfAny(Char) возвращает позицию индекса с отсчетом от нуля первого вхождения в данном экземпляре какого-либо одного или нескольких символов, указанных в массиве символов Юникода.
LastIndexOfAny(Char[]) делает то же самое, только возвращает индекс последнего вхождения.
Когда подстрока не найдена, методы возвращает -1.
string welcome = "Hello world! Goodbye world!";
int x = welcome.IndexOfAny(new Char[] {'w'}); // 6
Обратите внимание: данные методы не ищут количество вхождений, а всего лишь определяют, есть ли такая подстрока в строке или нет.
Чтобы удалить подстроку можно использовать метод Remove(Int32, Int32) - он удаляет подстроку от первого указанного индекса до второго.
string welcome = "Hello world! Goodbye world!";
string cut = welcome.Remove(1, 3); // "Ho world! Goodbye world!"
|
Чтобы в C# заменить в строке одну подстроку на другую, применяют метод Replace() . Есть два варианта использования:
Replace(char old, char new) - char old заменяется на char new ;
Replace(string old, string new) - string old заменяется на string new , то есть можно заменить больше одного символа.
Пример замены в строке в C#:
string phone = "+1-234-567-89-10";
// дефисы меняются на пробелы
string edited_phone = phone.Replace("-", " ");
// +1 234 567 89 10
|