非JSON格式字符串转换为正规JSON字符串
把所有非正规的json转换为正常的json(最大容忍限度)
经过博主的敲打最后封装成如下的函数,在此做次记录,也给有需要的人提供一个参考意见:
测试字符串:
{name:'zhang san',
}{‘name’:'zhang san',
}{‘name’:'zhs'a'ng san',
}{"name’:'zhs“a'ng san',
}{"na‘me’:'zhs“a'ng san',age':25
}{"na‘me’:zhs“a'ng san,age:'25
}{"na‘me’:'zhs“a"ng san',age: '2'5
}复制代码
ToJson函数
// 不和规范的json 转换成符合规范的JSONtoJson(json) {let copyJson = json;if (!copyJson) return;// 替换不正常的 { 号copyJson = copyJson.replace(/{/g, '{')// 替换不正常的 } 号copyJson = copyJson.replace(/}/g, '}')// 替换不正常的 : 号copyJson = copyJson.replace(/:/g, ':')// 去掉所有的空格copyJson = copyJson.replace(/s/g, '')// 替换所有的 引号copyJson = copyJson.replace(/['‘“’”]/g, '"')// 替换value值中的双引号copyJson = copyJson.replace(/"(?=([ws-_d.*u4E00-u9FA5uf900-ufa2d]+?))/g, '’')// 替换不正常的 , 号copyJson = copyJson.replace(/[,]/g, ',')// 替换 undefined 为字符串copyJson = copyJson.replace(/["']?undefined["']?/g, '"undefined"')// 替换所有}之前的,号copyJson = copyJson.replace(/,}/g, '}')try {// 若正常直接返回JSON.parse(copyJson);return copyJson;} catch (err) {// 不正常开始替换copyJson = copyJson.replace(/{"?([u4E00-u9FA5uf900-ufa2d'"dw_-]*?)"?:/g,($a,$b)=>{return `{"${$b}":`;}) copyJson = copyJson.replace(/,"?([u4E00-u9FA5uf900-ufa2d'"dw_-]*?)"?:/g,($a,$b)=>{return `,"${$b}":`;})return copyJson}};复制代码
以上函数仅供参考,希望对你有所帮助,若有更好的方案欢迎给我留言额。
关注我的博客:zane的个人博客
非JSON格式字符串转换为正规JSON字符串相关推荐
- python知识:json格式文本;异常处理;字符串处理;unicode类型和str类型转换
python知识:json格式文本:异常处理:字符串处理:unicode类型和str类型转换 参考文章: (1)python知识:json格式文本:异常处理:字符串处理:unicode类型和str类型 ...
- Oracle怎么获取json类型字符串值,sql解析json格式字段 如何获取json中某个字段的值?...
java将json数据解析为sql语句?小编给你倒一杯热水.可你惦记着其他饮料,所以你将它放置一旁.等你想起那杯水时,可惜它已经变得冰冷刺骨. 图片中是json数据,每个数据的开头都有表名称,操作类型 ...
- Python将JSON格式数据转换为SQL语句以便导入MySQL数据库
前文中我们把网络爬虫爬取的数据保存为JSON格式,但为了能够更方便地处理数据.我们希望把这些数据导入到MySQL数据库中.phpMyadmin能够把MySQL数据库中的数据导出为JSON格式文件,但却 ...
- java解析sql查询字段_sql解析json格式字段 如何获取json中某个字段的值?
java将json数据解析为sql语句?小编给你倒一杯热水.可你惦记着其他饮料,所以你将它放置一旁.等你想起那杯水时,可惜它已经变得冰冷刺骨. 图片中是json数据,每个数据的开头都有表名称,操作类型 ...
- python︱处理与使用json格式的数据(json/UltraJSON/Demjson)、pickle模块、yaml模块
python种关于json有很多,simplejson,cjson,还有ujson(详细内容可见:http://blog.csdn.net/gzlaiyonghao/article/details/6 ...
- python的json格式输出_python中json格式数据输出实现方式
python中json格式数据输出实现方式 主要使用json模块,直接导入import json即可. 小例子如下: #coding=UTF-8 import json info={} info[&q ...
- JavaScript 将字符串转换为数字 – JS 字符串转 Int 示例
JavaScript 将字符串转换为数字 – JS 字符串转 Int 示例 "John Doe" -> String 'John Doe' -> String &quo ...
- hive 导出json格式 文件_hive支持json格式的数据
Hive 支持完全 json 格式的数据 现有 json 格式的数据 test.txt ,如下 {"name":"zhang","age" ...
- python类型转换异常_python知识:json格式文本;异常处理;字符串处理;unicode类型和str类型转换...
python进程中的实例和json格式的字符串之间的映射关系是非常直接的,相当于同一个概念被编码成不同的表示: stream in json form ----json.loads(str)----- ...
最新文章
- 自行编译Vim for Windows,加入Python支持!
- OllyDbg 使用笔记 (十二)
- 3.Excel数据透视表
- 正则验证多个邮箱用分号隔开
- java-jdk各版本特性概述
- go kegg_KEGG分析及可视化
- java发送文本邮件_1、java实现发送纯文本邮件
- Ubuntu系统多屏幕时 触摸屏如何分屏定位
- 虚拟机vmware与本地磁盘共享方法
- IEC104起始地址
- PTA单链表 - 20. 单值化(去重)
- 单调队列————[USACO09MAR]向右看齐Look Up
- Unity与 SO 交互 ☀️| .so文件(动态链接库 ) 基础知识科普
- 22/02/17学习笔记
- Overleaf编译问题
- TMS320F28335入门(二)GPIO学习
- 米联客 ZYNQ/SOC 精品教程 S02-CH24 利用AXI VDMA 实现MT9V034摄像头采集
- Webinar预告: 字幕翻译质量控制
- 江苏省计算机二级考试基础知识,江苏省计算机二级考试基础知识部分
- 什么是WAAS增强系统
热门文章
- ChatGPT聊天软件开发
- web安全是什么?主要分为哪几部分?
- 汇编与接口技术课程总结1——汇编程序debug调试
- aes解密流程图_aes流程图
- 针对“PL2303HXA自2012已停产,请联系供货商”问题的解决办法
- 巨型冰山惊现格陵兰,好莱坞大片场景上演
- vivos5字体怎么变大_vivoz1字体放大 vivos5字体大小在哪里设置
- 安装MySQL遇到的问题
- Third season tenth episode,Rachel quit her job as a waitress
- 在IDEA中激活JRebel