|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
11.01.2010, 21:44 | #1 |
Форумчанин
Регистрация: 15.12.2007
Сообщений: 422
|
Функция Pos, поиск снизу вверх
Здравствуйте! Есть ли в Delphi такая функция которая может искать текст и выдавать его место в строке, как функция Pos, но только не с вверху вниз, а наоборот (снизу вверх) ? ? ? Пробовал функцию PosEx, но она также ищет сверху вниз
|
11.01.2010, 22:43 | #2 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Можно, конечно, извратиться...
Например, начинать поиск с точки, кратной длине поисковой подстроки, но с конца строки. Т.е. вначале делаем PosEx с оффсетом = длина строки - длина подстроки. Потом - с оффсетом = длина строки - две длины подстроки. Потом - с оффсетом = длина строки - три длины подстроки. И так далее. Вот вам и получится желаемое вами "удаление гланд через задний проход" Никак не пойму... Сегодня погода какая-то особенная, что ли? Уж больно много любителей экзотических подходов к программированию. |
11.01.2010, 22:59 | #3 |
Форумчанин
Регистрация: 15.12.2007
Сообщений: 422
|
Хм Может и погода Но именно этот вариант, на мой взгляд, лучше подходит к решению моей проблемы: есть текст в мемо, нужно удалить весь текст от начала указанного слова (которое встречается первым, нахожу Pos), и до второго указанного слова (которое тоже встречается первым, но уже с конца).
Почему в этом месте не подходит Pos? Потому что второе слово в этом промежутке может встречаться много раз Можно конечно циклом пробежаться, но хочу решить проблему нестандартным способом Последний раз редактировалось mihali4; 11.01.2010 в 23:06. |
11.01.2010, 23:10 | #4 |
Пользователь
Регистрация: 11.01.2010
Сообщений: 21
|
Из контекста мне стало видно, что функция ПозЕх() вас качественно удовлетворяет, просто крутит не в ту сторону
Так вот её текст: Код:
... типа I := Offset; заменить на I := Offset+ LenSubStr; ... ну и так далее Последний раз редактировалось _bAd_; 11.01.2010 в 23:14. |
11.01.2010, 23:17 | #5 |
Форумчанин
Регистрация: 15.12.2007
Сообщений: 422
|
Хммм, да, вы правы! Спасибо! То, что мне и нужно было Только у меня эта функция на асме, в 2007 делфе
PS: Я про то, что не мог ее изменить А вы как раз подкинула на делфе ее, спасибо Последний раз редактировалось RIO; 11.01.2010 в 23:38. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
что будет возвращать функция при различных pos | vasyapupkin | Общие вопросы C/C++ | 4 | 03.11.2009 20:48 |
функция pos | drumerbaker | Помощь студентам | 6 | 17.05.2009 15:52 |
Сверху\снизу | Marsik | Помощь студентам | 11 | 03.11.2007 13:33 |