C#-函数的名称是什么,与HttpUtility.JavaScriptStringEncode相反?

我需要评估字符串上的转义序列.
为了转义字符串,使用了HttpUtility.JavaScriptStringEncode或类似的东西.
我该如何进行相反的转换?

这是一个例子:

        var s = @"otehu""oeuhnoa
        oaehu
        oatehu
        oeu";
        var t = HttpUtility.JavaScriptStringEncode(s);
        var n = Decode(t);

我需要这样的功能解码,这将使n == s;

解决方法:

我发现此功能发布在另一个论坛上:

public static string JavaScriptStringDecode(string source)
{
    // Replace some chars.
    var decoded = source.Replace(@"\'", "'")
                .Replace(@"\""", @"""")
                .Replace(@"\/", "/")
                .Replace(@"\\", @"\")
                .Replace(@"\t", "\t")
                .Replace(@"\n", "\n");

    // Replace unicode escaped text.
    var rx = new Regex(@"\\[uU]([0-9A-F]{4})");

    decoded = rx.Replace(decoded, match => ((char)Int32.Parse(match.Value.Substring(2), NumberStyles.HexNumber))
                                            .ToString(CultureInfo.InvariantCulture));

    return decoded;
}

它为我工作

上一篇:用Python的elementtree替换作为数字字符引用一部分的与号


下一篇:如何在JavaScript中转义来自PHP的文本?