|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
16.06.2011, 15:06 | #1 |
Пользователь
Регистрация: 03.02.2009
Сообщений: 44
|
Как проверить имеется ли заглавная буква в строке?
Как проверить имеется ли заглавная буква в строке?
|
16.06.2011, 15:40 | #2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
а язык программирования какой?
и для какого языка надо найти заглавную (это имеется в виду Прописная, наверное) буква? Английский, финский, немецкий, испанский, китайский?... p.s. я уже про название темы молчу... а вообще алгоритм простой - перебрать все буквы в строке и каждую проверять на вхождение в заданный диапазон. входит - значит, ПРОПИСНАЯ! Последний раз редактировалось Serge_Bliznykov; 16.06.2011 в 15:49. |
16.06.2011, 15:45 | #3 |
Пользователь
Регистрация: 03.02.2009
Сообщений: 44
|
Английский, Руский, Delphi
|
16.06.2011, 15:52 | #4 |
Пользователь
Регистрация: 05.06.2011
Сообщений: 58
|
нужно создать множество типа
Код:
Код:
|
16.06.2011, 16:32 | #5 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
bumer7721, угу, согласен.
Уточню, если нужно проверять наличие и английских и русских прописных букв, тогда множество можно задать так: Код:
|
18.06.2011, 17:56 | #6 |
Пользователь
Регистрация: 13.06.2011
Сообщений: 16
|
Поиск заглавной буквы в строке
Как вариант, чтобы не перебирать все множества символов в языке - можно сравнивать каждый символ строки с ASCII-кодом заглавных букв (точнее с пределами):
Код:
P.S.: Таблица ASCII-символов Информация по ord() и chr() |
18.06.2011, 18:31 | #7 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Партизанин, Вы абсолютно НЕПРАВЫ!
1) операции с множествами ОЧЕНЬ быстры! 2) приведённый Вами код чрезвычайно ненагляден. и, главное, 3) у автора вопроса Delphi, следовательно Ваш код для русских букв ВООБЩЕ не будет работать. (вы использовали таблицу кодов ASCII для OEM кодировки - это кодировка DOS 866) - код для Turbo Pascal, но не для Delphi, где используется кодировка Windows 1251 (ANSI) ) p.s. это хороший пример, как не надо делать! Когда в погоне за быстродействием (в данном случае мнимым, кстати) пишется непрозрачный, негибкий, да ещё и ошибочный код! |
18.06.2011, 20:28 | #8 |
Пользователь
Регистрация: 13.06.2011
Сообщений: 16
|
Serge_Bliznykov, извиняюсь, таких подробностей я не знал... Абсолютно доверяю Вашему опыту!
Вопрос на счёт множеств: при проверки нахождения элемента в множестве не перебираются все элементы множества? (ну или до тех пор, пока не будет найдено совпадение) Код ненагляден, скорей всего так и есть, но также приложил к нему литературу и указал, что конкретно надо в ней посмотреть. |
18.06.2011, 21:27 | #9 | |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
Тут всё отлично! А вот с разными кодировками - тут действительно проблема налицо. Поэтому я и сделал замечание. Рад, что Вы его правильно восприняли. p.s. Кстати, если человек понимает, что такое код символа, кодовая таблица, что делают функции ORD и CHR - то подобным кодом вполне можно (ну не нужно ) пользоваться! Делать надо понимая, что делаешь! И надо обязательно помнить про его особенности. А вот новичкам в программировании и изучающим язык я лично подобные трюки не рекомендовал бы! |
|
18.06.2011, 21:49 | #10 |
Пользователь
Регистрация: 13.06.2011
Сообщений: 16
|
Тут Вы, пожалуй, опять таки правы! Новичкам в такие дебри лезть и вправду рановато... Не подумал об этом, к тому же ожидал, что, предложенный мною вариант, будет побыстрее, но не зная всех тонкостей - ошибался.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
как проверить наличие определенного текста в строке | jihot | Общие вопросы Delphi | 6 | 04.04.2010 18:40 |
Как проверить гласная или согласная буква? | TwiX | Общие вопросы Delphi | 5 | 14.12.2009 04:25 |
Как проверить наличие частицы в каждой строке memo? | zotox | Помощь студентам | 13 | 24.03.2009 12:56 |
как вывести строку поочередно сначала первая буква первой строки потом первая буква второй строки и т.д. | vitalik007 | Помощь студентам | 1 | 25.09.2007 20:45 |
как проверить все ли поля заполнены в СТРОКЕ ? | Максим-2 | Компоненты Delphi | 6 | 03.08.2007 22:31 |