数据如下
"base":"<a href=\"\/?r=search\/index\/index&searchType=shop&cat_code=&searchText=%E7%81%AB%E9%94%85\" target=\"_blank\">\u706b\u9505<\/a> <a href=\"\/?r=search\/index\/index&searchType=shop&cat_code=&searchText=ktv\" target=\"_blank\">KTV<\/a> <a href=\"\/?r=search\/index\/index&searchType=shop&cat_code=&searchText=%E5%A5%B3%E8%A3%85\" target=\"_blank\">\u5973\u88c5<\/a> <a href=\"\/?r=search\/index\/index&searchType=shop&cat_code=&searchText=%E7%BE%8E%E5%AE%B9\" target=\"_blank\">\u7f8e\u5bb9<\/a> <a href=\"\/?r=search\/index\/index&searchType=shop&cat_code=&searchText=%E7%94%B5%E5%99%A8\" target=\"_blank\">\u7535\u5668<\/a>现要求取出<a *****>要取出的内容</a>
就是节点之间的内容里面第二个的KTV 之前取出了searchText后面的内容发现有的是乱码的,所以还是重新取节点的内容
老代码贴出来
JSONObject object = new JSONObject(content); String string = object.getString("base");
Pattern pattern = Pattern.compile("searchText=([^\"]+)");
Matcher matcher = pattern.matcher(string); while (matcher.find()) {
String wString = matcher.group().substring(11,
matcher.group().length());
"base":"<a href=\"\/?r=search\/index\/index&searchType=shop&cat_code=&searchText=%E7%81%AB%E9%94%85\" target=\"_blank\">\u706b\u9505<\/a> <a href=\"\/?r=search\/index\/index&searchType=shop&cat_code=&searchText=ktv\" target=\"_blank\">KTV<\/a> <a href=\"\/?r=search\/index\/index&searchType=shop&cat_code=&searchText=%E5%A5%B3%E8%A3%85\" target=\"_blank\">\u5973\u88c5<\/a> <a href=\"\/?r=search\/index\/index&searchType=shop&cat_code=&searchText=%E7%BE%8E%E5%AE%B9\" target=\"_blank\">\u7f8e\u5bb9<\/a> <a href=\"\/?r=search\/index\/index&searchType=shop&cat_code=&searchText=%E7%94%B5%E5%99%A8\" target=\"_blank\">\u7535\u5668<\/a>现要求取出<a *****>要取出的内容</a>
就是节点之间的内容里面第二个的KTV 之前取出了searchText后面的内容发现有的是乱码的,所以还是重新取节点的内容
老代码贴出来
JSONObject object = new JSONObject(content); String string = object.getString("base");
Pattern pattern = Pattern.compile("searchText=([^\"]+)");
Matcher matcher = pattern.matcher(string); while (matcher.find()) {
String wString = matcher.group().substring(11,
matcher.group().length());
2种方法,一种是正则,一个是自己截串。
从<a 到 > 结束 开始取值 取到<\/a> 前面结束。
\u5973\u88c5 这样的数据自己转下就变成中文了。
拿到数据,该干什么干什么去
代码就不写了
以 <a 开始, >当作截取标志 <\/a>结束当作一个循环。。
还不会我也没办法
Pattern pattern = Pattern.compile("blank\">([^</a]+)");
Matcher matcher = pattern.matcher(string); while (matcher.find()) {
String wString = matcher.group().substring(7,
matcher.group().length());