Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
yaprogrammist
4 / 4 / 1
Регистрация: 15.08.2013
Сообщений: 108
#1

Проверка, есть ли в строке большие буквы - C#

23.09.2014, 16:46. Просмотров 2054. Ответов 8
Метки нет (Все метки)

Здравствуйте. Не могу разобраться с одним вопросом. Нужно в введенной строке выполнить проверку, есть ли в ней прописные буквы русского алфавита. Для этого для начала же нужно создать массив букв, как это правильно делается, на Delphi я примерно нашел:
const m=['А'..'Я'];, а как это на c# реализовать без ошибок?
Ну и после этого foreach-ем остается только проверить вхождение строки в массив, верно?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.09.2014, 16:46
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Проверка, есть ли в строке большие буквы (C#):

Как преобразовать в строке все маленькие буквы в большие а большие в маленькие? - C#
Дана строка .Преобразовать в ней все маленькие буквы в большие а большие в маленькие. Вот что я написал но только считывает один Элемент...

Заменить в строке все малые буквы на большие - C#
Фунция:StrLB(s,n) Задание:заменить в строке s, начиная из позиции n, все малые буквы на большие; Выдаёт ошибку: Индекс и длина должны...

Как заменить в каждой четной строке все гласные буквы на большие - C#
Как заменить в каждой четной строке все гласные буквы на большие?

Определить, есть ли в строке удвоенные буквы - C#
Помогите , дана строка S, необходимо определить есть ли в строке удвоенные буквы (пара соседствующих одинаковых букв), напечатать слова,...

Распечатать введенную строку, заменив большие буквы в малые и повторить дважды каждую цифру - C#
Распечатать введен строку, заменив большие буквы в малые и повторить дважды каждую цифру

Ввести с клавиатуры 10 чисел. Если среди них есть числа, большие 15, заменить их на 15 - C#
Ввести с клавиатуры 10 чисел. Если среди них есть числа, большие 15, заменить их на 15. Помогите решать на с#

8
BozKurt
297 / 274 / 79
Регистрация: 06.05.2014
Сообщений: 861
Завершенные тесты: 1
23.09.2014, 17:16 #2
За тебя это могут сделать регулярные выражения:
C#
1
if (Regex.IsMatch(str, @"[А-ЯЁ]"))
0
XRoy
856 / 706 / 217
Регистрация: 15.04.2013
Сообщений: 2,047
Записей в блоге: 5
23.09.2014, 17:19 #3
Или универсальный способ для всех языков
C#
1
2
3
4
            string s = "абвГдежз";
            bool capital = s.Any(Char.IsUpper);
 
            Console.WriteLine(capital);
0
BozKurt
297 / 274 / 79
Регистрация: 06.05.2014
Сообщений: 861
Завершенные тесты: 1
23.09.2014, 17:23 #4
XRoy,
Цитата Сообщение от yaprogrammist Посмотреть сообщение
прописные буквы русского алфавита
0
Learx
1039 / 846 / 86
Регистрация: 31.03.2010
Сообщений: 2,466
23.09.2014, 17:24 #5
yaprogrammist, массив символов создается так:
C#
1
char[] chars = new[]{'А', 'Б', 'В' ...};
таким образом надо будет перечислять все буквы.
для проверки есть ли вообще символы используйте метод IndexOfAny
как вариант, можно использовать регулярные выражения
C#
1
2
3
//находим любй кирилический символ исключая маленькие
Match m = Regex.Math(string, @"[\p{IsCyrillic}-[\p{Ll}]]");
if(m.Success) { //символ найден}
0
XRoy
856 / 706 / 217
Регистрация: 15.04.2013
Сообщений: 2,047
Записей в блоге: 5
23.09.2014, 17:30 #6
Тогда так
C#
1
bool capital = s.Any(x => x >= 'А' && x <= 'Я' || x == 'Ё');
0
Learx
1039 / 846 / 86
Регистрация: 31.03.2010
Сообщений: 2,466
23.09.2014, 17:35 #7
XRoy, ага, как вариант. я просто помню что там не все символы попадают в последовательность потому так и не стал писать
0
yaprogrammist
4 / 4 / 1
Регистрация: 15.08.2013
Сообщений: 108
23.09.2014, 17:41  [ТС] #8
Спасибо, учту.

C#
1
2
3
4
if (Regex.IsMatch(str, @"[А-ЯЁ]"))
if (Regex.IsMatch(str, @"[A-Z]"))
if (Regex.IsMatch(str, @"[a-z]"))
if (Regex.IsMatch(str, @"[0-9]"))
А получается,что такой код ищет есть ли большие буквы русского алфавита, маленькие и большие буквы русского и цифры?
0
Learx
1039 / 846 / 86
Регистрация: 31.03.2010
Сообщений: 2,466
23.09.2014, 18:11 #9
yaprogrammist, большие и маленькие латинского
0
23.09.2014, 18:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.09.2014, 18:11
Привет! Вот еще темы с ответами:

Проверка есть ли файл - C#
Вот так сделаю проверку есть ли файл . if (File.Exists(&quot;файл.exe&quot;)) { ------- } Но если файлов много .. не делать же для каждого...

Найти буквы в строке - C#
Задача такая: Дан текст из русских символов (задается как параметр). В нем нужно найти количество заданной буквы. Например, в строке...

Увеличения буквы в строке - C#
Если вместо Ремув написать ToUpper , то он подчеркнет ,как ошибку. Почему? Как исправить? { private static int j; ...

Заменить в строке буквы на цифры - C#
Дана строка: 3A54B24E, нужно заменить в ней буквы на цифры, исходя из того, что буква A имеет значение 10, B 11, C 12 и т. д, Z 36. В итоге...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru