![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Не работает Pos
Iriss © (2013-11-26 11:22:00)Решил я попробовать FireMonkey (Delphi XE3) и начал писать простенькую программку, столкнулся с такой проблемой, что не понятно почему функция Pos не видит в строке 'I' из 1/2 І р.
причем AnsiPos('1/2 ', Razrad) отрабатывает нормально.
Может кто видит, где я ошибся?
ConvertRazradToStandartFormat('1/2 І р.');
ConvertRazradToStandartFormat('ІІ р. ');
function TRazradSyncGUIForm.ConvertRazradToStandartFormat(
Razrad: string): string;
var
sv: string;
IsJunior: Boolean;
st2: Integer;
begin
sv := '-';
// Razrad := AnsiUpperCase(Razrad);
st2 := AnsiPos('I', Razrad);
// Delete(Razrad, AnsiPos('1/2 ', Razrad), Length('1/2 ') );
// Delete(Razrad, AnsiPos('1/2', Razrad), Length('1/2') );
// Razrad := StringReplace(Razrad, '3', 'III', [rfReplaceAll, rfIgnoreCase]);
// Razrad := StringReplace(Razrad, '2', 'II', [rfReplaceAll, rfIgnoreCase]);
// Razrad := StringReplace(Razrad, '1', 'I', [rfReplaceAll, rfIgnoreCase]);
// IsJunior := (AnsiPos('юн', Razrad) <> 0) or (AnsiPos('ю', Razrad) <> 0);
// if IsJunior
// then begin
// if AnsiPos('III', Razrad) <> 0
// then sv := TEXT_III_JUNIOR
// else if AnsiPos('II', Razrad) <> 0
// then sv := TEXT_II_JUNIOR
// else if AnsiPos('I', Razrad) <> 0
// then sv := TEXT_I_JUNIOR;
// end;
// if not IsJunior
// then begin
// if AnsiPos('III', Razrad) <> 0
// then sv := TEXT_III
// else if (AnsiPos('II', Razrad) <> 0)
// then sv := TEXT_II
// else if AnsiPos('I', Razrad) <> 0
// then sv := TEXT_I;
// if AnsiPos('КМС', Razrad) <> 0
// then sv := TEXT_KMS;
// end;
//
// sv := Trim(sv);
Result := sv;
end;
Iriss (2013-11-26 12:29:00) [1]спасибо
RWolf (2013-11-26 12:03:00) [2]В этой строке кириллическая І, а не латинская I.
Iriss (2013-11-26 11:23:00) [3]st2 выдает 0, а вроде как должно 1