返回连接多个字符串的结果

时间:2014-04-11 13:55:01

标签: c# string concat

我想创建一个程序,用分隔符删除每个换行符,然后在文本前插入prefix,并在文本后插入suffix,所以这是函数:

private string replacer(string text,string delimiter,string prefix,string suffix)
    {
        string replaced = text.Replace(System.Environment.NewLine, delimiter);
        string concat = String.Concat(prefix, delimiter, suffix);
        return replaced;

为什么prefixsuffix未在文字中插入? enter image description here

2 个答案:

答案 0 :(得分:2)

您将返回replaced。您应该返回concat

private string replacer(string text,string delimiter,string prefix,string suffix)
{
    string replaced = text.Replace(System.Environment.NewLine, delimiter);
    string concat = String.Concat(prefix, delimiter, suffix);
    return concat ;

您还可以使用string.Format("{0} {1} {2}",prefix, delimter, suffix);来调整间距。

根据您的问题,被替换的没有做任何事情。它应该如下:

private string replacer(string text,string delimiter,string prefix,string suffix)
{
    string replaced = text.Replace(System.Environment.NewLine, delimiter);
    string concat = String.Concat(prefix, replaced, suffix);
    return concat ;

此处更换将是一个新行。不确定你是想这样做还是只是使用分隔符。

答案 1 :(得分:2)

  

使用分隔符删除每个换行符,然后插入前缀   文本,并在文本后面插入后缀,所以这里是函数

除了返回不正确的变量外,您没有正确连接值。你需要:

string concat = String.Concat(prefix, replaced, suffix);
                                     //^^^^^^ Here replaced instead of delimeter

//and then:
return concat;