8

如果字符出现在开头,我只想在字符串的开头":"用空格字符替换字符。删除字符而不是替换它。并替换所有出现的字符,即使它们不在开始时也是如此。解决办法是什么?可以使用正则表达式吗?还是有什么其他方式?期望的结果是:" "":"TrimStart(":".ToCharArray())Replace(":", " ")

:abc -> abc
abc  -> abc
a:bc -> a:bc
abc: -> abc:
4

1 回答 1

17

你可以使用这个正则表达式:

var output = Regex.Replace(input, "^:", " ");

但是对于这么简单的事情,我建议使用传统的字符串方法:

var output = 
    (!string.IsNullOrEmpty(input) && input[0] == ':') 
    ? " " + input.Substring(1) : input;

注意:在您的情况下,可能不需要检查空字符串或空字符串。

于 2013-06-25T19:29:42.277 回答