RichTextBox.Find не работает с Solr Highlights - PullRequest
2 голосов
/ 06 июля 2011

Мое приложение должно иметь возможность указать, откуда в исходном документе на самом деле берутся основные моменты от Solr. Пока мой проект работает только с TXT-файлами.

Я использую блики, возвращаемые Solr, как строковые входные данные для функции richtextbox.find. Когда у меня есть начальная точка попадания, я выделяю строку с помощью функции richtextbox.select и устанавливаю backcolor, color и другие свойства.

ПРОБЛЕМА: RichTextBox.Find никогда не возвращает корректный вывод (всегда -1), что означает, что он не находит мой выделенный текст в документе.

Я попытался удалить теги <em> и </em> вместе с тегами \n, которые есть в строке выделения, но не будут присутствовать в текстовом документе, но все равно этого не происходит. Работа. Поиск той же строки в MS Word или Notepad в исходном файле также не работает, даже если строка выглядит идентично фрагменту текста в файле. Могу ли я получить какую-либо другую информацию об изменениях, которые мне нужно внести в строку, чтобы сделать ее доступной для поиска?

РЕДАКТИРОВАТЬ 1:

Я разыскал проблему. Очевидно, в некоторых случаях выделение, которое возвращает Solr, содержит некоторые непечатаемые или ненужные символы, которые изначально не были найдены в исходном документе. Мне нужен способ надежно очистить их по некоторым критериям. Мой текст содержит много допустимых специальных символов, поэтому я не могу позволить себе удалить их по ошибке!

...