|
发表于 2022-12-27 15:28:43
|
显示全部楼层
山东省青岛市

本帖最后由 kyo9766 于 2022-12-27 16:25 编辑
能加上一个选择,数组是否拆行,就更完美了,稍微修改了一下,数组只有值的时候,不拆行,数组内嵌JSON数据时拆行,感谢分享
|
JSON美化_4 | 文本型 | | |
参数_json文本 | 文本型 | | | | 参数_是否拆分数组 | 逻辑型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 局部_数组 | 文本型 | | 0 | 局部_i | 整数型 | | | 局部_文本 | 文本型 | | | 局部_tab | 整数型 | | | 局部_inString | 逻辑型 | | | 局部_c | 文本型 | | | 局部_文本2 | 文本型 | | | 局部_数组进入 | 逻辑型 | | | 局部_数组JSON | 逻辑型 | | | 局部_是否拆行 | 逻辑型 | | |
局部_数组 = 分割文本 (参数_json文本, #换行符, ) 参数_是否拆分数组 = 选择 (是否为空 (参数_是否拆分数组 ), 真, 参数_是否拆分数组 ) 计次循环首 (取数组成员数 (局部_数组 ), 局部_i ) 局部_文本 = 局部_文本 + 局部_数组 [局部_i ] 计次循环尾 () 计次循环首 (取文本长度 (局部_文本 ), 局部_i ) 局部_c = 取文本中间 (局部_文本, 局部_i, 1 ) 如果真 (局部_c = #换行符 或 局部_c = 到文本 ({ 10 }))   局部_c = “”   如果 (局部_inString )  如果真 ( (局部_c = #引号 或 局部_c = “'”) 且 取文本中间 (局部_文本, 局部_i - 1, 1 ) ≠ “\”)    局部_inString = 假      如果 (取反 (局部_inString ) 且 (局部_c = #引号 或 局部_c = “'”))    局部_inString = 真    如果 (取反 (局部_inString ) 且 局部_c = “ ”)   到循环尾 ()     如果 (取反 (局部_inString ) 且 局部_c = “:”)     局部_c = 局部_c + “ ”               如果 (参数_是否拆分数组 = 真)      如果 (取反 (局部_inString ) 且 局部_c = “,”)       局部_c = 局部_c + #换行符 + 取空白文本 (局部_tab × 2 )                     如果 (取反 (局部_inString ) 且 (局部_c = “[” 或 局部_c = “{”))         局部_tab = 局部_tab + 1         局部_c = 局部_c + #换行符 + 取空白文本 (局部_tab × 2 )        如果 (取反 (局部_inString ) 且 (局部_c = “]” 或 局部_c = “}”))          局部_tab = 局部_tab - 1          局部_c = #换行符 + 取空白文本 (局部_tab × 2 ) + 局部_c                                                            如果真 (局部_c = “[”)      局部_数组进入 = 真            如果真 (局部_数组进入 且 局部_c = “{”)       局部_数组进入 = 假            如果真 (局部_c = “]”)      局部_数组进入 = 假            如果 (取反 (局部_inString ) 且 局部_c = “,” 且 局部_数组进入 = 假)       局部_c = 局部_c + #换行符 + 取空白文本 (局部_tab × 2 )                            如果 (取反 (局部_inString ) 且 局部_c ≠ “[” 且 局部_c = “{”)        局部_tab = 局部_tab + 1         局部_c = 局部_c + #换行符 + 取空白文本 (局部_tab × 2 )        如果 (取反 (局部_inString ) 且 局部_c ≠ “]” 且 局部_c = “}”)         局部_tab = 局部_tab - 1          局部_c = #换行符 + 取空白文本 (局部_tab × 2 ) + 局部_c                                                             局部_文本2 = 局部_文本2 + 局部_c 计次循环尾 ()返回 (局部_文本2 )
|
|