| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > RichEdit: проблема с FindText |
| Автор: Alexeyt 31.12.2008, 15:00 |
| Делаю поиск в RichEdit (текст в UTF8, поддерживается RichEdit WinXP SP2). Файл выложен http://atorg.net.ru/temp/Find_next_UTF8.txt. Первый поиск буквы "а" (английской): успешно. Поиск далее (от смещения найденного + 1): неудачно - в этом проблема. Т.е. поиск далее всегда ничего не находит в этом файле. Можно и более длинные слова искать. В коде ищу через метод TRichEdit.FindText. |
| Автор: Rrader 1.1.2009, 09:44 | ||
Код из справки вроде работает
|
| Автор: Alexeyt 1.1.2009, 10:55 |
| Код из справки работает не совсем. Он находит "а", но не находит второе вхождение "ap" (в слове Apollo в конце файла, ссылка выше). Или просто "Apollo". Опцию MatchCase я убрал. ОТличия от моего: У меня был поиск до MaxInt, а в коде - до Length(Text) - StartPos. В случае UTF-8 файла такое число возможно некорректно. Добавлено @ 11:08 Решение: искать надо до MaxInt - StartPos. Тогда ищет корректно... |
| Автор: Nastroenie 18.5.2009, 13:29 |
| а можно коментарии к данному коду на русском языке, не совсем понятен алгоритм поиска с заменой |
| Автор: Alexeyt 18.5.2009, 15:42 |
| проблема решена, см выше, комментировать что-то нет смысла. |