КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Доступ к отдельным символам в строке
Работа со строками Класс string (System.String) содержит множество полезных методов, позволяющих, например: • Конкатенировать две и более строк • Сравнить две строки • Обратиться к отдельным символам или подстрокам заданной строки • Вставить часть одной строки в другую • Скопировать строку • Определить число символов в строке Для использования этих методов требуется определенная система идентификации отдельных символов и подстрок в строке. Предположим, например, что нужно скопировать подстроку "is" следующей строки: "This is string" Для решения такой задачи в классе string применяется целочисленный индекс, отсчитываемый от 0, а не от 1 (рис. 1.). Очевидно, что он нумерует все символы, включая пробелы и знаки пунктуации.
Чтобы обратиться к подстроке "is", необходимо написать команду со следующим смыслом: "прочесть 2 символа, начиная с позиции 5". В строке 3 следующего фрагмента показано, как это делается в С#: string andString; string myString = "This is string"; andString = myString.SubString(5, 2); Здесь применяется метод Substring класса string. Он копирует "is" из myString в andString. Таким образом, выражение myString.SubString(5, 2) указывает программе возвратить подстроку строки myString, начинающуюся в позиции 5 и содержащую 2 символа. Предположим, что нам необходимо проанализировать некоторый текст и вычислить сколько в этом тексте содержится символов и слов. Для этого нам необходимо понять каким образом можно определять слово в тексте. Легко догадаться, что количество слов равно количеству пробелов плюс один. Тогда возникает другой вопрос, как определить пробел. Для этого в языке С# существует специальный статический метод: char.IsWhiteSpace(ch) Здесь ch это анализируемый символ. Создадим программу, которая выводит количество символов в тексте, а также количество слов в тексте. using System; class TextAnalyzer { public static void Main() { string myText; int numWhitespaceChars = 0; int numWords = 0; char ch; int index = 0;
Console.WriteLine("Please enter text:"); myText = Console.ReadLine(); myText = myText.ToUpper();
while(index < myText.Length) { ch = myText[index]; if(char.IsWhiteSpace(ch)) numWhitespaceChars++; index++; } numWords = numWhitespaceChars + 1; Console.WriteLine("Text analysis:"); Console.WriteLine("Number of symbols: {0:N0}", index); Console.WriteLine("Number of words: {0:N0}", numWords); Console.ReadLine();
} }
Другие методы необходимые для анализа текста char.lsLetter(ch) – определяет является ли текущий символ буквой. char.IsDigit(ch) – определяет является ли текущий символ цифрой.
Дата добавления: 2014-01-04; Просмотров: 523; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |