C#查找并替换

时间:2013-02-26 06:26:30

标签: c# string

我有一个////abc/abc/abc/asd.aspx类型的字符串变量。

在字符串的开头可以有任意数量的/,我希望输出为/abc/abc/abc/asd.aspx

还可以将字符串值设为/abc/abc/abc/asd.aspx,其输出应为/abc/abc/abc/asd.aspx

请帮助,我如何使用String.Replace();或我可以使用的任何其他方法?

3 个答案:

答案 0 :(得分:5)

您可以这样做:

var correctedString = "/" + originalString.TrimStart('/');

如果字符串的任何部分中有/var correctedString = Regex.Replace(originalString, "/{2,}", "/"); ,或者您通过RegEx执行此操作:

{{1}}

答案 1 :(得分:2)

string str = " ////abc/abc/abc/asd.aspx";
string newStr = "/"  + string.Join("/", str.Split(new[] { "/" }, 
                                        StringSplitOptions.RemoveEmptyEntries));

这也适用于像"///abc///abc//abc/asd.aspx"这样的字符串。

答案 2 :(得分:0)

您可以使用正则表达式:

string path = "////abc/abc/abc/asd.aspx";

path = System.Text.RegularExpressions.Regex.Replace(path, @"/+", "/");

结果:

/abc/abc/abc/asd.aspx