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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.06.2010, 22:03   #1
lifeton
 
Регистрация: 27.05.2010
Сообщений: 9
По умолчанию Сортировка строк по двум символам конца строки

Всем привет
Подскажите как решить следующую задачу:
есть
DataField: TStrings;

заполненный как-то так:
70135446=#12040162#10987462#9342613 #16777215#15592942#5395052=Ah
50264376=#8839068#8503697#9084815#1 2370365#6519144#4947287=3c
70246255=#14731690#12562072#1013057 0#5458752#15987441#11375730=2d
64740663=#11842782#9605805#14211290 #2960953#14869219#11250614=8h
81043285=#14863276#12891036#1467132 3#5852994#16777215#15987441=6d

хочу отсортировать его по последним двум символам строки, т.е. в приведенном примере нужно сравнивать
Ah
3c
2d
8h
6d

Подскажите как вытащить эти два последних символа для сравнения.
Перемещать буду DataField.Move(CurIndex, NewIndex);

В голове только вариант с переводом строки в массив символов, но мне кажется есть реализация попроще для этой задачи )
lifeton вне форума Ответить с цитированием
Старый 10.06.2010, 22:30   #2
rokweb
Пользователь
 
Регистрация: 15.01.2010
Сообщений: 18
По умолчанию

Думаю Вам подойдет вариант через Copy?
Copy(DataField.Strings[i],Length(DataField.Strings[i])-2,Length(DataField.Strings[i])) - вернет последние 2 символа из строки I массива DataField.
rokweb вне форума Ответить с цитированием
Старый 10.06.2010, 22:33   #3
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

строка это и есть массив символов

Код:
copy(DataField.Strings[i],Length(DataField.Strings[i])-1,2)

Цитата:
Сообщение от rokweb Посмотреть сообщение
Думаю Вам подойдет вариант через Copy?
Copy(DataField.Strings[i],Length(DataField.Strings[i])-2,Length(DataField.Strings[i])) - вернет последние 2 символа из строки I массива DataField.
чуть опоздал но будем считать что подправил

Последний раз редактировалось vovk; 10.06.2010 в 22:35.
vovk вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как обратится к символам конкретной строки? QuadroX Помощь студентам 1 11.02.2010 12:27
паскаль,одномерный массив,сортировка вставка,сортировка убывания,от максимального до конца немозг Помощь студентам 11 06.02.2010 21:57
ввод до конца строки. ssi Помощь студентам 0 27.01.2010 09:47
Поиск значения по двум символам кода maneta Microsoft Office Excel 3 17.01.2010 22:14
Поиск строк по символам в Memo Nocturnal Помощь студентам 2 15.12.2009 17:33