ГПОУ «Ленинск-Кузнецкий политехнический техникум»
Преподаватель Щеглова Алена Александровна
Теоретическое занятие
для студентов II курса
Ленинск-Кузнецкий, 2023
Создавать строки можно используя переменную типа string и присваивая ей значение
Объявление переменной:
string имя_переменной = “ символы ” ;
Вывод символьной строки:
Console.WriteLine( имя_переменной );
Например:
string s1 = "hello";
Console.WriteLine(s1); // hello
1) Повторение символов, указанное количество раз:
new String('Символ', n);
где n – количество повторений символа
Например:
Console.WriteLine(new String('a', 6)); // аааааа
2) Конструктор принимает массив символов, из которых создается строка
Например:
string s3 = new String(new char[] { 'w', 'o', 'r', 'l', 'd' });
Console.WriteLine(s3);
3) Конструктор, создающий строку из части массива символов.
m - начальный индекс, с которого извлекаются символы
n - количество символов:
new char[] { 'w', 'o', 'r', 'l', 'd' }, m, n);
Например:
string s4 = new String(new char[] { 'w', 'o', 'r', 'l', 'd' }, 1, 3); // orl
Console.WriteLine(s4);
string имя_переменной = “ символьные данные ";
char имя_переменной_символа = имя_переменной [ индекс ];
Например:
string m = "hello";
// получаем символ
char s5 = m[1]; // символ 'e‘
Console.WriteLine(s 5 );
1)
string имя_переменной = “ символы ";
Console.WriteLine( имя_переменной .Length); // длина строки
Например:
string m = "hello";
Console.WriteLine( m .Length);
2)
string имя_переменной = “ символы ";
int t = имя_переменной .Length;
Console.WriteLine(t);
Например:
string m = "hello";
int t = m .Length
Console.WriteLine(t); // длина строки
Перебор строки, применяя обращение к символам по индексу
Например:
string m = "hello";
for(var i =0; i
{
Console.WriteLine(message[i]);
}
Объединения (конкатенации) строк используется оператор "+ ” и метод Concat:
1) string имя_переменной = «символ1" + " символ2";
2) имя_переменной = string.Concat( «символ 1» , « символ2 ");
Например:
string s1 = "hello";
string s2 = "world";
string s3 = s1 + " " + s2; // hello world
string s4 = string.Concat(s3, "!!!"); // hello world!!!
Console.WriteLine(s 1 );
Console.WriteLine(s 2 );
Console.WriteLine(s 3 );
Console.WriteLine(s4);
Строки сравниваются по значению их символов:
Console.WriteLine( имя_строки 1 == имя_строки 2);
Например:
string m 1 = "hello";
string m 2 = "hello";
Console.WriteLine(m1 == m2); // true
Для сравнивания строк используется метод Compare()
Суть сравнения строк состоит в том, что проверяется их отношение относительно алфавита
Строка "a" "меньше" строки "b",
"bb" "больше" строки "ba".
- если обе строки равны - метод возвращает "0",
- если первая строка меньше второй – "-1",
- если первая больше второй – "1":
Например:
Console.WriteLine( String.Compare("a", "b" ) ); // возвращает -1
Console.WriteLine( String.Compare("a", "a") ) ; // возвращает 0
Console.WriteLine( String.Compare("b", "a") ) ; // возвращает 1
Console.WriteLine( String.Compare("ab", "abc") ) ; // возвращает -1
0) {Console.WriteLine("Строка s1 стоит после строки s2");} else { Console.WriteLine(" Строки s1 и s2 идентичны");} // результатом будет "Строка s1 перед строкой s2" " width="640"
string s1 = "hello";
string s2 = "world";
int r = string.Compare(s1, s2); // сравнение строк
// результат: -1 , т.к. первая строка меньше второй
if (r { Console.WriteLine(" Строка s1 перед строкой s2"); }
else if (r 0)
{Console.WriteLine("Строка s1 стоит после строки s2");}
else { Console.WriteLine(" Строки s1 и s2 идентичны");}
// результатом будет "Строка s1 перед строкой s2"
Метод IndexOf() возвращает индекс первого символа подстроки, которую содержит строка
Данный метод принимает один аргумент – подстроку
Если строка не содержит подстроки, метод возвращает "-1"
Например:
string s = "Hello, World";
Console.WriteLine(s.IndexOf("H")); // 0
Console.WriteLine(s.IndexOf("World")); // 7
Console.WriteLine(s.IndexOf("Zoo")); // -1
Методы StartsWith и EndsWith позволяют узнать начинается или заканчивается ли строка на определенную подстроку
Массив [ индекс ] .EndsWith(“ символ_поиска ")) – определяет строку, которая оканчивается на “ символ_поиска «
Массив [ индекс ] . StartsWith ( “ символ_поиска ")) – определяет строку, которая начинается на “ символ_поиска “
Например:
1) var f = new string[]{"myapp.exe","forest.jpg", "main.exe","book.pdf"};
for (int i = 0; i
{ if (f[i].EndsWith(".exe"))
Console.WriteLine(f[i]); } // myapp.exe; main.exe
2) var f = new string[] {"myapp.exe", "forest.jpg","main.exe","book.pdf"};
for (int i = 0; i
{ if (f[i]. StartsWith ("m"))
Console.WriteLine(f[i]); } // myapp.exe; main.exe
Разбить строку по указанному символу на массив подстрок
Метод Split() принимает один аргумент - символ, по которому будет разбита строка. Возвращает массив строк.
Например:
string s = "Arsenal, Milan, Real Madrid, Barcelona";
string[] array = s.Split(',');
foreach (string t in array)
{
Console.WriteLine(t);
}
Trim() - обрезает начальные и конечные пробелы и возвращает обрезанную строку
имя_переменной. Trim(new char[]{‘ первый_символ ’ , ‘ второй_символ ’ } );
Первый_символ и второй_символ – это начальные и конечные символы, которые следует обрезать
Например:
string text = " hello world ";
text = text.Trim(); // результат "hello world"
text = text.Trim(new char[] { 'd', 'h' }); // результат "ello worl"
Substring ( n ) возвращает обрезанную строку c n -го символа
Например:
string text = "Хороший день"; // строка
// обрезаем начиная с третьего символа
text = text.Substring(2);
// результат "роший день ”
Substring ( m, имя_переменной .Length - n ) - возвращает обрезанную строку начиная с m символа и последние n символов
Например:
// обрезаем сначала до последних двух символов
text = text.Substring(0, text.Length - 2);
// результат « хо роший де"
обрезаем сначала до последних двух символов
text = text.Substring( 2 , text.Length - 3 );
// результат «роший д"
имя_переменной.Insert( n, “ подстрока ” ) - вставка подстроки в строку, начиная с указанной позиции n
Например:
string s = "Hello World";
Console.WriteLine(s.Insert(5,",")); // вставляет запятую на 5 позицию
Результат
Hello, World
Remove ( n ) удаляет часть строки, стоящую после n -го символа
Например:
string text = " Хороший день";
text = text.Remove (3 ); //Хор
Remove (имя_переменной .Length - n ) удаляет часть строки, стоящую после n -го символа, включительно
int ind = text.Length - 4 ; // Хороший
Remove ( m, n ) – удаляет, начиная с m символа, n - количество
Например:
string text = " Хороший день";
text = text.Remove(0, 2);
Console.WriteLine(text); // роший день
имя_переменной.Replace( “ символы, которые нужно заменить", “ символы_замена"));
Например:
string s = "Hello, World, Hello";
Console.WriteLine(s.Replace("Hello", "World"));
//выведет "World, World, World"
Перевести всю строку в верхний/нижний регистр
Для этого используются методы ToUpper() и ToLower().
Например:
string s = "Hello, World";
Console.WriteLine(s.ToUpper()); // выводит "HELLO, WORLD"
Console.WriteLine(s.ToLower()); // выводит "hello, world"
1. Написать программу, которая запрашивает имя пользователя и здоровается с ним.
2. Написать программу, которая в введенной с клавиатуры
строке преобразует строчные буквы русского алфавита в прописные