У меня есть текст в строке. Я хочу найти два конкретных слова в строке и обернуть эти слова тегом <b>
.
я пытался что-то вроде этого, но он не работает:Оберните тег вокруг определенных слов в строке
for (int i = 0; i < bold.Split(' ').Count(); i++)
{
if (myString.Split(' ')[i].Contains("MyWord"))
myString.Split(' ')[i] = "<b" + myString.Split(' ')[i] + "</b";
}
И ни делает это:
if (myString.Contains("MyWord"))
myString = myString.Replace("MyWord", "<b>MyWord</b>");
В первом случае назначение выполняется по новому новому массиву, полученному с помощью split. вы должны сохранить это в начальной переменной, а затем выполнить назначение. Но это плохой aproach tbh. 2-й лучше, и он должен работать. Как вы его протестировали? – Cosu
В чем проблема? Второй пример работает, можете ли вы показать нам конкретный пример строки, которую вы ищете? –
Я не вижу ничего плохого во втором примере. какой результат вы получаете, и что именно вы ожидаете? Кстати, вам не нужно 'if', если вы используете' Replace', он заменит только если содержит и дублирует поиск. –