C# 从html字符串中提取json对象
我被一个问题困住了,我从一个包含html的web请求中得到一个字符串,但在这个html中有一个json对象,我需要将它解析为一个对象,以便在代码中使用,但我被困住了,不知道如何做到这一点 我尝试使用IndexOf()和LastIndexOf(),但当我尝试将它们指向第一个和最后一个大括号时,我得到了一个索引-1和一个异常 有什么想法吗 编辑: 我也试着把它转换成一个字符列表,然后在上面乱写,但是当它被转换时,大括号就消失了,位置是一个空条目 编辑2: 添加了我从请求中获得的html,它的第3-5行是我需要提取的C# 从html字符串中提取json对象,c#,.net,C#,.net,我被一个问题困住了,我从一个包含html的web请求中得到一个字符串,但在这个html中有一个json对象,我需要将它解析为一个对象,以便在代码中使用,但我被困住了,不知道如何做到这一点 我尝试使用IndexOf()和LastIndexOf(),但当我尝试将它们指向第一个和最后一个大括号时,我得到了一个索引-1和一个异常 有什么想法吗 编辑: 我也试着把它转换成一个字符列表,然后在上面乱写,但是当它被转换时,大括号就消失了,位置是一个空条目 编辑2: 添加了我从请求中获得的html,它的第3-5
您能提供您收到的html字符串吗 更新: 可能是编码有问题 尝试: 或 如果你在上面的链接中找不到解决方案,请发布你正在使用的代码
string htmlText=Resources.html;
字符串jsonPtn=@“\{(?:[^\{}]\;(?\{)\}(?\}))+(?(o)(?!)\}”;
字符串输入=htmlText.Substring(htmlText.IndexOf(“redirectResponse=”);
Match Match=Regex.Matches(输入,jsonPtn,RegexOptions.Multiline | RegexOptions.IgnoreCase)[0];
字符串jsonText=match.Groups[0]。值;
var jsonObj=JObject.Parse(jsonText);
jsonObj将类似于:
{{
“消息ID”:“4232450191”,
“错误代码”:0,
“sessionToken”:{
“sessionToken”:“Trabffrpwyx4fgdhzorbydaaoicwcdo”,
“发行人系统ID”:“380”,
“creationTime”:{
“时间戳”:“2016-02-11T03:58:30-05:00”
},
“到期时间”:{
“时间戳”:“2016-02-11T04:03:30-05:00”
},
“maxIdlePeriod”:0
},
“现实模式”:1,
“用户名”:“我的用户名”
}}公共类MyHtmlTagRemover{
public static void main(String a[]){
String text = "<B>I don't want this to be bold<\\B>";
System.out.println(text);
text = text.replaceAll("\\<.*?\\>", "");
System.out.println(text);
}
publicstaticvoidmain(字符串a[]){
String text=“我不想用粗体显示”;
System.out.println(文本);
text=text.replaceAll(“\\”,“”);
System.out.println(文本);
}
}如果您不帮助我们了解您正在做什么,我们将如何帮助您?你在用什么图书馆?代码的相关部分是什么样子的?我正在使用c#.net,试图从服务器上收到的web请求中提取json对象。我正在用我的程序开发该网站的登录功能。添加了我在邮件帖子中得到的回复。太棒了!这对我帮助很大!
public static void main(String a[]){
String text = "<B>I don't want this to be bold<\\B>";
System.out.println(text);
text = text.replaceAll("\\<.*?\\>", "");
System.out.println(text);
}