Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.06.06;
Скачать: [xml.tar.bz2];

Вниз

Проверка буквы на строчность   Найти похожие ветки 

 
seregka   (2005-05-21 22:36) [0]

Как проверить является ли первая буква в слове (как первую букву определять я знаю) строчной (заглавной).


 
default ©   (2005-05-21 22:37) [1]

с помощью головы


 
KilkennyCat ©   (2005-05-21 22:37) [2]

1. сделать ее строчной и сравнить с саиой собой.
2. проверить ее на вхождение в массив строчных.


 
seregka   (2005-05-21 22:47) [3]

вопрос снимается. Спасибо
if q1[1]=uppercase(q1[1]) ...


 
Anatoly Podgoretsky ©   (2005-05-21 22:48) [4]

Ну-ну


 
default ©   (2005-05-21 22:48) [5]

а буквы какие: и латинские и наши или нет?


 
seregka   (2005-05-21 22:51) [6]

А какая разница? Буквы наши - кириллицеские


 
default ©   (2005-05-21 22:55) [7]

seregka   (21.05.05 22:51) [6]
у тебя заведомо есть инфа что это буква, а не более обще - символ
так что достаточно одного сравнения Заглавность=Ord(KirSymbol)<Ord("а") ("а" тут наша)


 
Ученик   (2005-05-21 23:24) [8]

>Anatoly Podgoretsky ©   (21.05.05 22:48) [4]
А какой Ващ вариант ?


 
KilkennyCat ©   (2005-05-21 23:37) [9]

if "A" in ["A".."Я"] дзен...


 
Anatoly Podgoretsky ©   (2005-05-21 23:38) [10]

Ученик   (21.05.05 23:24) [8]
У меня много вариантов, uppercase в их число не входит. Более всего мне нравится классический вариант с множеством.


 
Anatoly Podgoretsky ©   (2005-05-21 23:39) [11]

KilkennyCat ©   (21.05.05 23:37) [9]
Хоть и множество, но вариант не верный, почто не навидишь английские буквы?


 
KilkennyCat ©   (2005-05-21 23:41) [12]


> [11] Anatoly Podgoretsky ©   (21.05.05 23:39)


Да как-то автоматом на русские переключил мысли, где-то тут что-то промелькивало, вот и подумал, что нужны только русские.


 
Ученик   (2005-05-21 23:46) [13]

>Anatoly Podgoretsky ©   (21.05.05 23:38) [10]
А подумал, что IsCharUpper.


 
Anatoly Podgoretsky ©   (2005-05-21 23:51) [14]

Ученик   (21.05.05 23:46) [13]
Такая функция в АПИ есть, ее можно использовать, с учетом ее ограничений. Что именно использовать зависит от автора, но я бы не стал использовать АПИ и не из-за ограничений, а из-за возможности перехода на .NET, на другую платформу, например на Линукс. Классический вариант будет работать и в этих случаях. Что касается быстродействия, то это не существенно, но вроде и в этом случае оно выше.


 
seregka   (2005-05-21 23:53) [15]

Anatoly Podgoretsky
А чем UpperCase не устраивает?


 
Просто Джо ©   (2005-05-21 23:55) [16]


>  [15] seregka   (21.05.05 23:53)
> Anatoly Podgoretsky
> А чем UpperCase не устраивает?


Подгорецкого устроит, тебя, боюсь, нет.

Запусти
 ShowMessage (UpperCase("&#224;"));
а потом
 ShowMessage (ANSIUpperCase("&#224;"));


 
Ученик   (2005-05-21 23:58) [17]

>seregka   (21.05.05 23:53) [15]


{ sysutils.pas }

function UpperCase(const S: string): string;
var
 Ch: Char;
 L: Integer;
 Source, Dest: PChar;
begin
 L := Length(S);
 SetLength(Result, L);
 Source := Pointer(S);
 Dest := Pointer(Result);
 while L <> 0 do
 begin
   Ch := Source^;
   if (Ch >= "a") and (Ch <= "z") then Dec(Ch, 32);
   Dest^ := Ch;
   Inc(Source);
   Inc(Dest);
   Dec(L);
 end;
end;



 
KilkennyCat ©   (2005-05-21 23:58) [18]

if pos("A", "QWERTYUIOPASDFGHJKLZXCVBNMЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮЁ") > 0 then


 
seregka   (2005-05-22 00:00) [19]

Просто Джо
Оба дали "А".
Или Вы хотите сказать, что uppercase только с латиницей нормально работает?


 
Anatoly Podgoretsky ©   (2005-05-22 00:03) [20]

KilkennyCat ©   (21.05.05 23:58) [18]
Ой ну зачем нам разные варианты придумывать, я же сказал их много, есть смысл использовать классические, ясные варианты.


 
Просто Джо ©   (2005-05-22 00:04) [21]


>
> [19] seregka   (22.05.05 00:00)
> Просто Джо
> Оба дали "А".
> Или Вы хотите сказать, что uppercase только с латиницей
> нормально работает?


Да. И в Delphi6 и в Delph2005. Подозреваю, что и в 7-ке тоже.


 
Anatoly Podgoretsky ©   (2005-05-22 00:07) [22]

UpperCase returns a copy of the string S, with the same text but with all 7-bit ASCII characters between "a" and "z" converted to uppercase. To convert 8-bit international characters, use AnsiUpperCase instead.


 
default ©   (2005-05-22 02:46) [23]

если брать только русские буквы(исключая обособленное "ё")вариант [7] на треть времени быстрее чем со множеством


 
KilkennyCat ©   (2005-05-22 02:50) [24]


> [23] default ©   (22.05.05 02:46)


если.


 
default ©   (2005-05-22 02:56) [25]

KilkennyCat ©   (22.05.05 02:50) [24]
[6]


 
KilkennyCat ©   (2005-05-22 03:00) [26]


> [25] default ©   (22.05.05 02:56)


угу. а завтра он об этом забудет, или изменит ТЗ, или еще-что-нибудь-что-не-ждали-но-вероятность-прихода-высокая случится. И начнет здесь спрашивать "Почему у меня там-то там-то не работает, хотя вчера все работало".

________________________________________________


 
Просто Джо ©   (2005-05-22 03:05) [27]


> Проверка буквы на строчность


Стоп! Приехали.
Человеку, оказывается, нужна строчная, а не заглавная.


 
default ©   (2005-05-22 03:12) [28]

Просто Джо ©   (22.05.05 03:05) [27]
а разница?


 
Просто Джо ©   (2005-05-22 03:15) [29]


>  [28] default ©   (22.05.05 03:12)
> Просто Джо ©   (22.05.05 03:05) [27]
> а разница?


Возможно это придирка, но название ветки не соответствует ответам в ней. А так ничего, даже весело, особенно реплики seregk"и :)


 
KilkennyCat ©   (2005-05-22 03:18) [30]


> Просто Джо ©   (22.05.05 03:15)


последнее слово в скобках - заглавные. так что все путем.


 
seregka   (2005-05-22 03:21) [31]

ну описался - ПРОПИСНЫЕ, а не строчные.


 
default ©   (2005-05-22 03:27) [32]

seregka   (22.05.05 03:21) [31]
"ну описался - ПРОПИСНЫЕ, а не строчные."
надеюсь, памперс спас?:)
P.S. шучу


 
Просто Джо ©   (2005-05-22 03:28) [33]

[30] KilkennyCat ©   (22.05.05 03:18)
> последнее слово в скобках - заглавные

имеем 2 варианта прочтения
(1) Строчные - это заглавные;
(2) Строчные/заглавные.

Авторский пост [31] подтверждает мое предположение о подразумеваемом варианте (1).

---
П.С.
Мелочные придирки и подозрительность -- в моем характере, впрочем это соответствует и стилистике форума. Что делать.


 
Игорь Шевченко ©   (2005-05-23 12:47) [34]

if IsCharUpper(....) then



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.06.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.52 MB
Время: 0.074 c
14-1116589607
WOLFphantom
2005-05-20 15:46
2005.06.06
DerectX и OpenGL в Delphi


9-1110349712
Trof
2005-03-09 09:28
2005.06.06
Интеллект


1-1116870063
Masta Hookah
2005-05-23 21:41
2005.06.06
Извлечение 2-ух CD-приводов...


1-1116929692
KillerToxa
2005-05-24 14:14
2005.06.06
Гипперссылка


14-1116337121
reticon
2005-05-17 17:38
2005.06.06
Знатокам HTML. Гиперссылка без href.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский