提取json字符串中指定格式中的参数值
直接上代码:
import java.util.ArrayList;
import java.util.regex.Matcher;
import java.util.regex.Pattern; public class TestDemo {
public static void main(String[] args) {
ArrayList json = new ArrayList();
json.add("111");
json.add("222");
json.add("333");
User user = new User();
user.setJson(json);
user.setCode("200");
user.setMessage("true");
String string = "(" + JSON.toJSONString(user) + ")";
System.out.println(string);
// String regex = "\"json\":(.*?),\"message\"";// 使用非贪婪模式!
Pattern pattern = Pattern.compile("\\[\"(.*?)\"\\]");
Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println(matcher.group(1));
}
String parse = "[{CSTM_NO:\"11118\",CSTM_NAME:\"广东XX电力有限公司\",FIX_GNL:\"111810158\",FIX_ACC:\"D201306070003\"," +
"OP_FLAG:\"正常\",BUSS_KIND_NAME:\"三个月定期存款\",BAL:\"25,178,750.00\",AVAL_BAL:\"25,178,750.00\"," +
"OP_DATE:\"2013-06-07\",DUE_DATE:\"2013-12-07\",ROWNUM_:1,idx:0},{CSTM_NO:\"11118\"," +
"CSTM_NAME:\"广东XX电力有限公司\",FIX_GNL:\"111810158\",FIX_ACC:\"D201306070002\",OP_FLAG:\"正常\"," +
"BUSS_KIND_NAME:\"三个月定期存款\",BAL:\"25,178,750.00\",AVAL_BAL:\"25,178,750.00\",OP_DATE:\"2013-06-07\"," +
"DUE_DATE:\"2013-12-07\",ROWNUM_:3,idx:2},{CSTM_NO:\"11118\",CSTM_NAME:\"广东XX电力有限公司\"," +
"FIX_GNL:\"111810158\",FIX_ACC:\"D201306070005\",OP_FLAG:\"正常\",BUSS_KIND_NAME:\"三个月定期存款\"," +
"BAL:\"25,178,750.00\",AVAL_BAL:\"25,178,750.00\",OP_DATE:\"2013-06-07\",DUE_DATE:\"2013-12-07\"," +
"ROWNUM_:4,idx:3}]";
String regex = "FIX_ACC:(.*?),OP_FLAG";//别忘了使用非贪婪模式!
Matcher matcher1 = Pattern.compile(regex).matcher(parse);
while (matcher1.find()) {
String ret = matcher1.group(1);
System.out.println(ret);
} String str = "我是[001]真心求救的[002],你能帮帮我吗"; Pattern pattern1 = Pattern.compile("\\[(.*?)\\]"); Matcher matcher2 = pattern1.matcher(str); while(matcher2.find()){ System.out.println(matcher2.group(1));
}
}
}
打印结果如下:
({"code":"200","json":["111","222","333"],"message":"true"})
111","222","333
"D201306070003"
"D201306070002"
"D201306070005"
001
002
Process finished with exit code 0
提取json字符串中指定格式中的参数值的更多相关文章
- json字符串和表相互转化中遇到的一个严重问题
导致脚本崩溃的一个问题 Import "zm.luae" zm.Init Dim aaa="fdsf23423dsfsdf" dim 结果表=Encode.Js ...
- java前端传入的json字符串保存到表中的方法
表 service_goods_base 字段如下: 传入的json 字符串: servicePictureArray : [{"picServiceUrl": "h ...
- json字符串的标准格式
现在越来越多的项目和开发插件等默认都会支持和使用json数据格式,作为数据保持.传输的一种方式. 说是其中一种,就标示还有好多其他格式.比如:最多是xml.webservice的标准数据格式. 不过由 ...
- 一段字符串中间提取json字符串
项目过程中经常打日志:LOG.error("[failure][CreateOrder] param:{}", JSON.toJSONString(userCreateOrderD ...
- 如何提取app软件的apk格式中的字体?
1.下载apk格式的指定app软件: 2.将apk格式的文件名更改为后缀名为zip格式: 3.用winrar解压软件解压,然后就找到其中的ttf格式的字体文件. 举例说明,我想找到airbnb的app ...
- MVC中用View.bag保存json字符串。在js中使用,不用ajax请求。。。。
有时候我们只需要使用一次json数据,这时候直接在后台查出json,然后用view.bag传到前台使用,就会很方便..(在前台用ajax请求的话,感觉有点多余..) 上代码 后台: public Ac ...
- json字符串返回到js中乱码
Ajax 的post请求值返回到js中时出现中文乱码的情况,但是在action中写入时并未乱码,解决办法在action中写入前,加上这两行: request.setCharacterEncoding( ...
- 如何实现@ResponseBody,把Json字符串转换为指定类型
1.问题 spring 是如何把 http中的body,转换为指定类的,里面的难点其实在于泛型的处理. 2.Spring的处理 2.1 HandlerMethod 这个类Spring对Method的封 ...
- http 中指定head中Content-Encoding属性为gzip 转换过程中的一些问题
项目环境: 对接的服务放在微服务中 提供接口给应用层调用 ,微服务放需要 接受参数 并且转换成压缩格式给 第三方服务 本来以为需要自己压缩,httpclint 中已经封装好了GzipCompressi ...
随机推荐
- c++ 生成容器元素生成随机数
// random_shuffle example #include <iostream> // cout #include <algorithm> // random_shu ...
- springboot连接mongodb进行CRUD
springboot连接mongodb进行CRUD的过程: 在执行以下操作前已安装了mongodb并创建了用户和数据库,使用Robo 3T可成功连接. 1.创建springboot项目,加入以下mav ...
- open suse tumbleweed安装记录
zypper install imagewriter cmake blender fontforge gimp digikam inkscape kontact pitivi smplayer si ...
- mysql 优化知识点
附录: https://www.nowcoder.com/discuss/150059?type=0&order=0&pos=13&page=0 本文概要 概述 为什么要优化 ...
- 经典算法:n个人围成一圈,报m的离开,最后剩下谁?
public int remainPersonNumber(int n, int m) { //输入不合法 if(n < 1 || m < 1) return -1; //初始化,存入Li ...
- 基础遗传算法的TSP问题
一.简介 旅行商问题是一个经典的组合优化问题.一个经典的旅行商问题可以描述为:一个商品推销员要去若干个城市推销商品,该推销员从一个城市出发,需要经过所有城市后,回到出发地.应如何选择行进路线,以使总的 ...
- arcgis的arcpy写入几何怎么创建一个空心面要素并读取几何和属性信息,根本不够管
转载请注明作者(独孤尚良dugushangliang)出处:https://blog.csdn.net/dugushangliang/article/details/83861447 这个我是没找到这 ...
- InsetDrawable
表示把一个Drawable嵌入到另外一个Drawable的内部,并且在内部留一些间距, 类似与Drawable的padding属性,但padding表示的是Drawable的内容与Drawable本身 ...
- selenium历史版本下载
python历史版本下载 https://pypi.org/project/selenium/#history java历史版本下载 http://selenium-release.storage. ...
- Python查询Mysql时返回字典结构的代码
Python查询Mysql时返回字典结构的代码 MySQLdb默认查询结果都是返回tuple,输出时候不是很方便,必须按照0,1这样读取,无意中在网上找到简单的修改方法,就是传递一个cursors.D ...