文档章节

json结构校验代码

小宋
 小宋
发布于 2015/04/27 13:43
字数 168
阅读 16
收藏 0
public static void main(String[] args) {
		Pattern pattern=Pattern.compile("[\\{\\[\\]\\}]");
		String a="{a:\"b\",c:[{d:\"e\",{f:\"g\",h:\"i\"}}]}";//示例
		Pattern pattern1=Pattern.compile("\\{\\}");
		Pattern pattern2=Pattern.compile("\\[\\]");
		Matcher matcher=pattern.matcher(a);
		StringBuilder sb=new StringBuilder();
		StringBuilder sb1=null;
		while(matcher.find()){
			String d=matcher.group(0);
			System.err.println(d);
			sb.append(d);
		}
		if(sb.length()%2!=0){
			System.err.println("error");
		}else{
			char[] cs=sb.toString().toCharArray();
			for(int i=0;i<=sb.length()/2-1;i++){
				sb1=new StringBuilder();
				sb1.append(cs[i]).append(cs[sb.length()-1-i]);
				System.err.println("sb2="+sb1.toString());
				Matcher matcher1=pattern1.matcher(sb1.toString());
				Matcher matcher2=pattern2.matcher(sb1.toString());
				while(matcher1.find()||matcher2.find()){
					System.err.println("json结构匹配");
				}
			}
			System.err.println("标签数是对的");
		}
	}


© 著作权归作者所有

共有 人打赏支持
小宋
粉丝 1
博文 11
码字总数 4902
作品 0
朝阳
程序员
Bumpover.js - 牢固而趁手的数据校验转换库

Bumpover 能帮助你编写出简洁明了的数据校验与转换代码。通过熟悉的类型注解 API 与声明式的转换规则,你可以轻松地在运行期校验未知的数据,并将其转换为自己可控的格式。 稳定的数据结构对...

01/05
0
0
renren-security v2.1.0 发布,J2EE 快速开发平台

renren-security是一款基于代码生成器的J2EE快速开发平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展,方便二次开发! v2.1版本更新日志: 新增XSS过滤,自动过滤request、json非...

独孤求胜16
2017/06/02
1K
4
2014年 代码总结与疑问

清楚的记得,2013年6月就开始出来实习,然后2014年3月来到深圳一家企业,6月大学毕业,10月转正直到现在。在工作中一直从事研发,包括 JavaScript、java、Android ,但是由于个人经验不足,总...

learn_more
2015/01/25
1K
25
慕课网Flask构建可扩展的RESTful API-4. 理解WTForms并灵活改造她

4.1 重写WTForms 优化1 之前的代码,修改完成之后,已经修复了之前的缺陷,但是这样爆出了两个问题: 1.代码太啰嗦了,每个试图函数里,都需要这么写 2.ClientTypeError只是代表客户端类型异...

Meet相识_bfa5
06/16
0
0
使用bejson来解析和查看json数据

网址是 http://www.bejson.com Be Json Make Json Easy 1 JSON格式化校验 很多人在得到JSON数据后,一时没有办法判断JSON数据格式是否正确,是否少或多符号而导致程序不能解析,这个功能正好能帮...

废柴大叔
2013/02/18
3.8K
2

没有更多内容

加载失败,请刷新页面

加载更多

下一页

JS:异步 - 面试惨案

为什么会写这篇文章,很明显不符合我的性格的东西,原因是前段时间参与了一个面试,对于很多程序员来说,面试时候多么的鸦雀无声,事后心里就有多么的千军万马。去掉最开始毕业干了一年的Jav...

xmqywx
今天
0
0
Win10 64位系统,PHP 扩展 curl插件

执行:1. 拷贝php安装目录下,libeay32.dll、ssleay32.dll 、 libssh2.dll 到 C:\windows\system32 目录。2. 拷贝php/ext目录下, php_curl.dll 到 C:\windows\system32 目录; 3. p...

放飞E梦想O
今天
0
0
谈谈神秘的ES6——(五)解构赋值【对象篇】

上一节课我们了解了有关数组的解构赋值相关内容,这节课,我们接着,来讲讲对象的解构赋值。 解构不仅可以用于数组,还可以用于对象。 let { foo, bar } = { foo: "aaa", bar: "bbb" };fo...

JandenMa
今天
1
0
OSChina 周一乱弹 —— 有人要给本汪介绍妹子啦

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子 :分享水木年华的单曲《中学时代》@小小编辑 手机党少年们想听歌,请使劲儿戳(这里) @须臾时光:夏天还在做最后的挣扎,但是晚上...

小小编辑
今天
21
5
centos7安装redis及开机启动

配置编译环境: sudo yum install gcc-c++ 下载源码: wget http://download.redis.io/releases/redis-3.2.8.tar.gz 解压源码: tar -zxvf redis-3.2.8.tar.gz 进入到解压目录: cd redis-3......

hotsmile
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部