【问题标题】:Ignore inline commands like \n in a string [closed]忽略字符串中的内联命令,如 \n [关闭]
【发布时间】:2018-02-01 15:35:26
【问题描述】:

我试图找到如何忽略字符串中的 \n 等转义字符 (示例字符串:Console.WriteLine("how\n are you\n");) 我发现如何主要忽略大小写敏感,但那些不是像 \n 这样的转义字符。 (在手机上我没有完整代码的示例。当我可以使用笔记本电脑时会更新)

那么,如果在 C# 中禁用转义字符,我该如何忽略?

(编辑) 感谢您的帮助,不知道它们被称为转义命令。 是的,我想将它们显示为角色,抱歉这个含糊的问题。

【问题讨论】:

  • \n 不是内联命令,它是escape character。您是否要删除所有 转义字符?
  • 这些不是内联命令。它们是表示 字符 的转义序列,例如换行符、制表符、双引号等。您也不清楚您想要做什么。您想替换其中的一些字符吗?或者键入一个字符串文字,其中\n 被解释为两个字符而不是一个换行符?
  • 除了\n,\r,\r\n之外,是否需要删除其他字符?如果没有,那么就做var bar = foo.Replace(@"\n", "").Replace(@"\r", "")

标签: c# string


【解决方案1】:

这可能是一个解决方案:

string a = "how\n are you\n"
a = a.Replace("\n", string.Empty);
Console.WriteLine(a);

想法总是一样的,你必须用空字符串替换\n、\r等这样的结构。 更高级的方法可以在这里找到:How to remove new line characters from a string? 或在这里:Replace Line Breaks in a String C#。

根据Yollo的要求,这里有一个单行版本:

 Console.WriteLine("how\n are you\n".Replace("\n", string.Empty));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-16
    • 1970-01-01
    • 2019-06-03
    • 1970-01-01
    • 2019-08-04
    • 1970-01-01
    相关资源
    最近更新 更多