防止多行原始字符串中出现换行符

问题描述 投票:0回答:1

如何定义原始字符串文字,其中代码中的换行符只是为了可读性,并且结果字符串中没有换行符(

\r
\n
)?

类似这样的:

string str =
    """
    first line;
    also first line
    """;

应该导致

"first line;also first line"

到目前为止,这就是我想出的,但它非常丑陋:

str =
    $"""
    first line;{""
    }also first line
    """;

至少比以下内容更简洁:

str =
    """
    first line;
    """ +
    """
    also first line
    """;

一位流行的 LLM 告诉我,在 C# 中,我可以在原始字符串文字的行尾使用

\
来防止换行符,但这似乎不起作用,因为反斜杠刚刚得到按字面意思对待。

c# string rawstring
1个回答
0
投票
public static class StringExtensions
{
    public static string WithoutNewlines(this string input)
    {
        return input.Replace("\n", "").Replace("\r", "");
    }
}

public static void Main()
{
    string str =
    """
    first line;
    also first line
    """.WithoutNewlines();
    
    Console.WriteLine(str);
}
© www.soinside.com 2019 - 2024. All rights reserved.