У меня есть этот метод, который заменяет (жирным) некоторые слова в строке и показывает измененную строку в ritchtextBox. В последней строке мне нужно заменить символ @ на новую строку. Я уже пробовал проверять этот форум, связывая несколько решений, но ничего не работало.RichTextBox не печатает новую строку
Метод, который я использую
private string bold(string ing)
{
StringBuilder builder = new StringBuilder();
ing = " " + ing + " ";
builder.Append(@"{\rtf1\ansi");
foreach (string word in splitwords)
{
var regex = new Regex(@"(?<![\w])" + word + @"(?![\w])", RegexOptions.IgnoreCase);
ing = regex.Replace(ing, m => @"\b" + m.ToString() + @"\c0");
}
ing = ing.Replace(@"\b", @"\b ");
ing = ing.Replace(@"\c0", @" \b0");
ing = ing.Replace("@", Environment.NewLine);
builder.Append(ing);
builder.Append(@"}");
MessageBox.Show("builder.ToString():" + builder.ToString());
return builder.ToString();
}
Когда я называю этот метод и «поставить его» в ritchTextBox он это не распространяется печатать новую строку
ingred.Rtf = bold(ingd);
Как мне решить эту проблему ??
EDIT :: строка ввода - line1 @ line2 @ line3
выход в MessageBox
Builder.ToString() : {\rtf1\ansi\b line1\b0
line2
line3
}
выход в ritchTextBox: line1 line2 line3
я не вижу какой-либо '(\ г) \ n' здесь O_O – kevintjuh93
Так как это RitchTextBoxIm, используя Environment.NewLine. Но я уже пробовал это, без радости. –
А я вижу это сейчас. Использует ли 'string' перед выполнением' Replace' какой-либо '@'? – kevintjuh93