Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Lazarus, Free Pascal, CodeTyphon
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.10.2014, 12:59   #1
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию Lazarus доступ к символу в строке и аналог функции POS

Собственно сабж в названии темы - мне нужно корректно работать с символами в строке.
Привык по старинке и код вроде такого:
Код:
var
    x, y: string;
begin
    x:='привет';
    y:=x[3];
    Showmessage(y); 
end;
дал совсем не тот результат, который мне нужен. И индексы и функция Pos очевидно работают с байтами, а не с символами. Юникод мне надо (хоть я его пока нигде явно не указывал), но мне также нужно для обработки строк доступ к конкретному символу и определение позиции символа в строке.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 06.10.2014, 13:35   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

UTF8Pos() из lazutf8 попробуй.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 06.10.2014, 14:23   #3
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

А доступ к символу? Мне вот надо x[3], а он мне не ту букову дает... Да это и вроде бы не беда должна быть, но в случае если символ занимал бы только две позиции. Однако же есть беда, когда один символ занимает 1 позицию, а другие (коих большинство) 2 позиции. То есть нет гарантии что каждый символ всегда занимает две позиции. так я бы пересчитывал, да и все.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 06.10.2014, 14:46   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
А доступ к символу?
Код:
UTF8Copy(s,3,1)
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 06.10.2014, 15:09   #5
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Не?
Poma][a вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Аналог Паскалевской функции pos(s1,s2) для С++ Oleg34 C++ Builder 2 11.01.2014 16:01
Реализовать функцию Pos(a, n) через другие функции. (Turbo Delphi) Just-Joni Помощь студентам 13 29.12.2013 16:42
Обращение к символу в строке, которая состоит в массиве строк. fyodr Паскаль, Turbo Pascal, PascalABC.NET 6 06.02.2012 08:38
обратиться к символу в строке vb.net bemm Общие вопросы .NET 0 11.04.2011 09:14
Доступ к строке Баламут Win Api 10 21.01.2008 08:44