У меня есть например вот такая строка.
string input = "(¬X^¬Y^Z)v(¬X^Y^¬Z)v(¬X^Y^Z)v(X^¬Y^Z)v(X^Y^¬Z)";
String.Replace
Видать я не совсем правильно выразиблся.Ладно попробуем так.
Если я счас ввиду "& # 172", но без пробелов и нажму отправить,но вместо этого я увижу символ ¬. Можно ли как нибудь сделать так,чтобы строка, введенная в коде программы при помощи вот этих кодов спецсимволов в textBox'e обображалась уже самими символами.Без непосредственных манипуляций с Replace.Там порядка 8 спец символов различных и для каждого делать Replace как то неправильно.Ведь на форуме они автоматически заменяются,неужели в текст боксах такого нет?
Форумы - это форумы, а компоненты, не предназначенные для HTML-рендеринга (вот в Qt компоненты предназначены для него, ты можешь просто написать в QLabel строку "<b><i>test</i></b>" и получишь выделенный и наклоненный текст, в Шарпе - нет).
Если б было не 172, а AC (т.е., в 16-ричном формате), то экранирование Юникодных символов:
"(\u00ACX^\u00ACY^Z)v(\u00ACX^Y^\u00ACZ)v(\u00ACX^Y^Z)v(X^\u00ACY^Z)v(X^Y^\u00ACZ)"
решает проблему. Десятичные коды записывать нельзя, к сожалению...
Пичально.Ладно,будем думать.
Можно Replace-ом заменить сразу все подобные коды на символы:
textBox1.Text =Вот что получается:
Regex.Replace(
s, @"&#([0-9]{3});",
delegate(Match match)
{ return Char.ConvertFromUtf32(Convert.ToInt32(match.Value.Substring(2, 3))); }
);
да регулярки рулят