位置: 编程技术 - 正文

正则表达式优化JSON字符串的技巧(正则化实现)

编辑:rootadmin

推荐整理分享正则表达式优化JSON字符串的技巧(正则化实现),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:正则表达式优化什么意思,正则表达式的效率与优化,正则表达式 u,正则表达式优化什么意思,正则化l1,正则表达式的效率与优化,正则表达式优势,正则表达式性能优化,内容如对您有帮助,希望把文章链接给更多的朋友!

json字符串很有用,有时候一些后台接口返回的信息是字符串格式的,可读性很差,这个时候要是有个可以格式化并高亮显示json串的方法那就好多了,下面看看一个正则表达式完成的json字符串的格式化与高亮显示

首先是对输入进行转换,如果是对象则转化为规范的json字符串,不是对象时,先将字符串转化为对象(防止不规范的字符串),然后再次转化为json串。其中json为输入。

等规范完数据之后对字符串进行标记,为了后面的切分、重新组合

这里有几个地方要添加标记,包括大括号、小括号的前后和逗号的后面都要添加标记,我这里使用的是换行rn(这样在命令行下测试时效果会比较好看)。

添加完成标记之后就要做一些优化处理,去掉多余的换行、去掉逗号前面的换行,这样做是为了在切分是免得出现空串浪费一次循环处理,最后在冒号后面添加空格,看起来更漂亮。

接下来就是对这个初步处理过的串进行进一步处理了,我会在function(index, node) {}函数中添加逻辑,对每一个切分单元进行处理,包括缩进和美化格式。

正则表达式优化JSON字符串的技巧(正则化实现)

首先说下缩进,缩进的方法很简单,遇到{、[符号时缩进增加1,遇到}、]符号时缩进减少1,否则缩进量不变。

完成缩进后就该美化高亮显示代码了,这里要用到几个css规则,下面可以看到,对切分单元进行高亮显示的时候这里用正则进行判断,如果匹配到大括号标记为对象class、中括号标记为数组class、属性名称、属性值,一次对这些进行css规则添加,添加完成之后拼接起来就可以了。

最后我们看看完整的方法代码(这里我使用了jquery类库),以及测试地址:

要对jsonstr进行美化,这样就可以了APP.format(jsonstr),直接输出至<pre></pre>标签中就可以看到效果,

下面是一个测试地址, 可以进去试一下,看看完整的源代码

PS:正则表达式替换json字符串的某一项的数字值

aa为json字符串,如:

js中flexible.js实现淘宝弹性布局方案 本文的内容就是介绍淘宝弹性布局方案lib-flexible实践,分享给大家供大家参考,具体内容如下1.页面需求这是要做的页面效果(不要对设计置评,这不是

谈谈我对JavaScript原型和闭包系列理解(随手笔记8) 在上篇文章给大家介绍了《谈谈我对JavaScript原型和闭包系列理解(随手笔记6)》,谈谈我对JavaScript原型和闭包系列理解(随手笔记9)可以点击了解详情。执

谈谈我对JavaScript原型和闭包系列理解(随手笔记9) 相关阅读:谈谈我对JavaScript原型和闭包系列理解(随手笔记6)谈谈我对JavaScript原型和闭包系列理解(随手笔记8)作用域引用《JavaScript语言精粹和编程实践

标签: 正则化实现

本文链接地址:https://www.jiuchutong.com/biancheng/385536.html 转载请保留说明!

上一篇:jQuery实现移动端滑块拖动选择数字效果(jquery移动端ui框架)

下一篇:js中flexible.js实现淘宝弹性布局方案(flexable.js)

  • 公司有买社保就要交税吗
  • 企业所得税法允许税前扣除的费用划分为
  • 缴纳城镇土地使用税标准
  • 增值税纳税义务发生时间的规定
  • 无形资产专利技术计入什么科目
  • 金税盘是每天有5次机会吗
  • 增值税发票什么时候认证
  • 销售20万需要多少进项
  • 季度申报后还要年度申报吗
  • 社会组织属于非法人组织吗为什么
  • 资产负债表的日期可以是1月1日吗
  • 企业滞留发票的产生和处理
  • 个人境外存款利息收入收税
  • 其他收益是否需缴税
  • 老板垫付员工工资怎么写条子
  • 核定征收怎么交企业所得税
  • 亏损企业股东年底借钱未还
  • 企业购买房产贷款
  • 增值税税负的概念和如何确定税负
  • 伙食费没有发票可以税前扣除吗
  • 上报汇总之后怎么申报
  • excel自动计算增值税
  • 用于职工集体福利的外购货物可以抵进项税额吗
  • 借款不归还的法律条款
  • 付现所得税体现在哪方面
  • 报税时利润表没写怎么办
  • 会计行业新技术
  • 企业资产损失会计处理
  • win7原版系统安装后没有任何驱动
  • 法人车无偿给公司使用合法吗
  • 减税降费是针对个人还是企业
  • linux源码安装软件的方法介绍
  • win10专区
  • 微软发布windows
  • php imagecopymerge
  • 工程项目合同签订
  • 报废车怎么走流程
  • 对公打款打错了
  • 其他收益会计科目怎么写
  • 会计申报需要哪些数据
  • yolov5中使用的限制目标宽高的方法防止梯度爆炸
  • html游戏大全
  • opencv1.0
  • spring ioc di aop
  • 角点检测算法
  • ai绘画图片
  • dede转zblog
  • 资产负债表上应付账款根据什么填制
  • python3中rindex用法
  • sql防御
  • python中Plotly Express是什么?
  • 如何判断关联
  • 通过SQLServer 2008 操作 MySQL的方法
  • 控股公司的收入怎么计算
  • sql server简单查询
  • 购买现金支票的申请说明
  • 收到材料发票怎么写摘要
  • 个税滞纳金影响企业吗
  • 公司是生产企业现在要开出租赁的发票可以开吗
  • 总分包模式和总承包模式
  • 抵扣联和发票联的区别
  • 增值税系统技术维护费 减免政策
  • win8系统笔记本怎么恢复出厂设置
  • win10入门全教程视频
  • ubuntu nginx webdav
  • 如何在linux
  • win10太麻烦了
  • linux指定格式显示日期
  • linux系统概述
  • kinect unity开发
  • jquery跳出循环
  • 批处理查找字符中含有等号的子串
  • activity生命周期的方法
  • android基础入门教程
  • python各进制符号
  • 获取手机信息的渠道
  • 重庆国家税务局发票查询
  • 税务稽查预警指标
  • 丹阳税务局一分局领导
  • 应缴财政专户款属于资产类吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设