无法在 C# 中使用 Regex.Unescape 删除转义序列
Unable to remove Escape sequences using Regex.Unescape in C#
我想删除从 Pokemon API.
获得的以下字符串中的所有转义序列
“出生时 its\nback 上的奇怪种子 was\nplanted。\f植物 sprouts\nand 生长 with\nthis 神奇宝贝。”
我用过 Regex.Unescape("A strange seed was\nplanted on its\nback at birth.\fThe plant sprouts\nand grows with\nthis POKéMON.")
但我得到的是相同的字符串。
输出
你能帮我解决这个问题吗?
我不想进行字符串替换,因为转义序列在下一个 API 调用中可能会有所不同。
当然,您得到的是相同的字符串 - 您的示例中没有转义字符 :)
字符串 literal 具有转义字符,但这些字符不存在于字符串本身中。当直接 window 打印结果时,它本身将其显示为字符串文字。这与您从 Console.WriteLine
之类的东西中得到的不一样。
您可以使用 regex replace 并有一组可能的转义序列(如 \n 和 \t 等)
我想删除从 Pokemon API.
获得的以下字符串中的所有转义序列“出生时 its\nback 上的奇怪种子 was\nplanted。\f植物 sprouts\nand 生长 with\nthis 神奇宝贝。”
我用过 Regex.Unescape("A strange seed was\nplanted on its\nback at birth.\fThe plant sprouts\nand grows with\nthis POKéMON.")
但我得到的是相同的字符串。
输出
你能帮我解决这个问题吗?
我不想进行字符串替换,因为转义序列在下一个 API 调用中可能会有所不同。
当然,您得到的是相同的字符串 - 您的示例中没有转义字符 :)
字符串 literal 具有转义字符,但这些字符不存在于字符串本身中。当直接 window 打印结果时,它本身将其显示为字符串文字。这与您从 Console.WriteLine
之类的东西中得到的不一样。
您可以使用 regex replace 并有一组可能的转义序列(如 \n 和 \t 等)