Благодаря NgM я использую StringBuilder в .NET 3.5 для поиска и экранирования специальных символов. Однако когда я использую метод ToString, он избегает escape-символов, что делает предыдущее упражнение бесполезным. Кто-нибудь знает, как это обойти?
Вот код:
private String ParseAndEscapeSpecialChars(String input)
{
StringBuilder sBuilder = new StringBuilder(input);
String output;
String specialChars = @"([-\]\[<>\?\*\\\""/\|\~\(\)\#/=><+\%&\^\'])";
Regex expression = new Regex(specialChars);
if (expression.IsMatch(input))
{
sBuilder.Replace(@"\", @"\\");
sBuilder.Replace(@"'", @"\'");
}
output = sBuilder.ToString();
return output;
}
Вот результаты отладки:
input "005 - SomeCompany's/OtherCompany's Support Center"
sBuilder {005 - SomeCompany\'s/OtherCompany\'s Support Center}
output "005 - SomeCompany\\'s/OtherCompany\\'s Support Center"