如果":"
字符出现在开头,我想仅在字符串的开头用空格" "
字符替换字符":"
。 TrimStart(":".ToCharArray())
删除不替换它的角色。并且Replace(":", " ")
替换了角色的所有出现,即使它们没有开始。解决办法是什么?可以使用正则表达式吗?还是其他任何方式?期望的结果是:
:abc -> abc
abc -> abc
a:bc -> a:bc
abc: -> abc:
答案 0 :(得分:11)
您可以使用此正则表达式:
var output = Regex.Replace(input, "^:", " ");
但是对于这么简单的事情,我建议使用传统的字符串方法:
var output =
(!string.IsNullOrEmpty(input) && input[0] == ':')
? " " + input.Substring(1) : input;
注意:在您的情况下,可能不需要检查空字符串或空字符串。