我认为这应该是一个非常简单的解决方案,但我遇到了麻烦。我试图删除{}中的所有字符串,包括另一个字符串中的括号,并用字符串" ^〜"替换它们。例如:
输入:" {asdf} Hello Stack {over}流程你们都非常有帮助。"
输出:" ^ ~Hello Stack ^〜流程你们都是^〜有帮助。
目前我正在使用正则表达式,但这仅用于替换只有一个分隔字符串的字符串。继承我的代码和输出:
System.Diagnostics.Debug.WriteLine("s: " + s);
string regex = "(\\{.*\\})";
string output = Regex.Replace(s, regex, "^~");
System.Diagnostics.Debug.WriteLine("output after replace:" + output);
s: {Name}, {Time}, {Date}
output after replace: ^~
s: and {} inches long.
output after replace: and ^~ inches long.
s: {Person}'s {} lbs. {} oz.
output after replace: ^~ oz.
正如你所看到的那样它只适用于只有一个{}的字符串,但是当有多个字符串时我会收到错误。必须有一些简单的我做错了,但我不太了解正则表达式,似乎无法在任何地方找到答案。
也许有一种更简单的方法可以在没有正则表达式的情况下做到这一点吗?