Обратите внимание, что мягкий дефис обычно виден в исходном коде, но обычно не должен присутствовать в отображаемом тексте. Его цель - отметить место, где можно сломать работу. Вы можете добавить его в длинное слово в тех местах, где разрешено ломать слово, зная, что отображение этого слова не повлечет за собой множество маленьких «минус».

исал следующий фрагмент, чтобы избавиться от лишних пробелов в текстовых фрагментах.

int index = text.IndexOf("  ");
while (index > 0)
{
    text = text.Replace("  ", " ");
    index = text.IndexOf("  ");
}

Обычно это работает хорошо, хотя довольно примитивно и, возможно, неэффективно.

проблема

Когда текст содержит «-» по какой-то странной причине, indexOf возвращает совпадение! Функция Replace ничего не удаляет, а затем застревает в бесконечном цикле.

Есть идеи, что происходит со строкой. IndexOf?

Ответы на вопрос(1)

Ваш ответ на вопрос