System.Text.RegularExpressions.Regex.Unescape转义串处理json
作者:互联网
//反转义
jsonText = System.Text.RegularExpressions.Regex.Unescape(jsonText);
//转义
jsonText = System.Text.RegularExpressions.Regex.Escape(jsonText);
string request_result_trade_item_detail_content = CXT.Web.get(trade_item_detail_url, Encoding.Default, cookieString );
Console.WriteLine(request_result_trade_item_detail_content);
HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();
doc.LoadHtml(request_result_trade_item_detail_content);
var nodes = doc.DocumentNode.SelectNodes("//script[contains(text(), 'data')]");
foreach (var node in doc.DocumentNode.SelectNodes("//script[contains(text(), 'data')]"))
{
Console.WriteLine(node.InnerText);
if (node.InnerText.Contains("mainOrder"))
{
string jsonText = Cxt.Uniti.StripTextTo(node.InnerText, '{', '}', 1);
//反转义
jsonText = System.Text.RegularExpressions.Regex.Unescape(jsonText);
Console.WriteLine(jsonText);
var deserializer = new JavaScriptSerializer();
var dic = deserializer.Deserialize<Dictionary<string, dynamic>>(jsonText);
//转义
jsonText = System.Text.RegularExpressions.Regex.Escape(jsonText);
var model1 = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, dynamic>>(jsonText);
}
}
//Model.deltaiData.Root deltaiData = Newtonsoft.Json.JsonConvert.DeserializeObject<Model.deltaiData.Root>(a.Replace(" var detailData = ", ""));
}
//
// 摘要:
// 通过替换为转义码来转义最小的字符集(\、*、+、?、|、{、[、(、)、^、$、.、# 和空白)。这将指示正则表达式引擎按原义解释这些字符而不是解释为元字符。
public static string Escape(string str);
//
// 摘要:
// 转换输入字符串中的任何转义字符。
public static string Unescape(string str);
标签:Regex,Unescape,string,Text,System,转义,var,jsonText 来源: https://blog.csdn.net/chenxiaotao22/article/details/102779791