Как найти сложную подсвеченную строку в моем методе в любых условиях? - PullRequest
0 голосов
/ 16 января 2019

Я работаю над выделением фона текста с помощью text mesh pro, но я не знаю, как найти сложный полный текст со всеми выделениями выделения.

Я делаю выбор с пометкой. После первой подсветки все нормально, но после отдыха - подсветка выполняется в неправильных местах или не выполняется вообще.

int beginningOfSelection = 0;
int endOfSelection = 0;
int startIndexOfSelectedCleanText = 0;

string text = "";
string mark = "<mark=#ffff1055></mark>";
string selectedText = "";
string cleanedText = text.Replace("<mark=#ffff1055>", "").Replace("</mark>", "");

if (endOfSelection > beginningOfSelection)
{
    selectedText = cleanedText.Substring(beginningOfSelection, endOfSelection - beginningOfSelection);
    startIndexOfSelectedCleanText = beginningOfSelection;
}
else if (endOfSelection < beginningOfSelection)
{
    selectedText = cleanedText.Substring(endOfSelection, beginningOfSelection - endOfSelection);
    startIndexOfSelectedCleanText = endOfSelection;
}

int startIndexOfSelectedText = text.IndexOf(selectedText, startIndexOfSelectedCleanText);

string markedText = mark.Insert(16, selectedText);
string highlightedText = text.Remove(startIndexOfSelectedText, selectedText.Length).Insert(startIndexOfSelectedText, markedText);

return highlightedText;

Я подозреваю, что это как-то связано с индексом, но не уверен. И если это так - как я могу найти правильный индекс (startIndexOfSelectedText)?

...