gpt4 book ai didi

c# - 渲染特殊字符 C#

转载 作者:太空狗 更新时间:2023-10-29 21:42:37 27 4
gpt4 key购买 nike

我有一个包含特殊字符 的字符串,例如:12345678912\rJ\u0011 因为我需要访问这些特殊字符来配置我的应用程序。我想在 TextBox 字段中完全像这样显示此字符串,因此到目前为止我尝试的所有操作都会生成一个字符串,其中字符 \u0011 尝试在末尾呈现一个空字符: “7896104866061\rJ”

我做了这个,但它不起作用。

string result = Regex.Replace(
ToLiteral(this.Buffer),
"[^\x00-\x7Fd]",
c => string.Format("\\u{0:x4}", (int)c.Value[0]))
.Replace(@"\", @"\\");

public static string ToLiteral(string input)
{
using (var writer = new StringWriter())
{
using (var provider = CodeDomProvider.CreateProvider("CSharp"))
{
provider.GenerateCodeFromExpression(
new CodePrimitiveExpression(input),
writer,
null);

return writer.ToString();
}
}
}

我需要做什么?提前致谢。

最佳答案

这是我显示 ctrl 字符的片段:https://gist.github.com/TheTrigger/6efa6a8e42eedf1e61e0db8e9ef4360a

using System.Text;

namespace CtrlCharReplace
{
public static class Extensions
{
public static string ReplaceCtrl(this string s)
{
var sb = new StringBuilder();
for (int i = 0; i < s.Length; i++)
{
char c = s[i];

var isCtrl = char.IsControl(c);
var n = char.ConvertToUtf32(s, i);

if (isCtrl)
{
sb.Append($"\\u{n:X4}");
}
else
{
sb.Append(c);
}
}

return sb.ToString();
}
}
}

关于c# - 渲染特殊字符 C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56459791/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com