"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Cómo analizar pares clave-valor a partir de una cadena codificada en base#eg11

Cómo analizar pares clave-valor a partir de una cadena codificada en base#eg11

Publicado el 2024-08-08
Navegar:765

Tenemos una cadena codificada en Base64 como sigue:

eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=

Y estamos intentando analizar la cadena JSON transcodificada ({"a":63,"c":298,"n":1,"s":1,"e":40,"p":4} ) como una mesa. A continuación se muestra el resultado deseado:

Image description
SQL escrito en MySQL:

SELECT

            JSON_EXTRACT(CONVERT(FROM_BASE64('eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=')

                        USING utf8),

            '$."a"') a,

            JSON_EXTRACT(CONVERT(FROM_BASE64('eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=')

                        USING utf8),

            '$."c"') c,

            JSON_EXTRACT(CONVERT(FROM_BASE64('eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=')

                        USING utf8),

            '$."n"') n,

            JSON_EXTRACT(CONVERT(FROM_BASE64('eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=')

                        USING utf8),

            '$."s"') s,

            JSON_EXTRACT(CONVERT(FROM_BASE64('eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=')

                        USING utf8),

            '$."e"') e,

            JSON_EXTRACT(CONVERT(FROM_BASE64('eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=')

                        USING utf8),

            '$."p"') p

No tiene nada de difícil. Solo necesitamos convertir las cadenas codificadas en Base64 en cadenas JSON y luego analizar JSON en una tabla de acuerdo con los pares K-V. La codificación SQL es complicada, especialmente cuando se desconoce el número de columnas de la tabla de resultados.

 

Es fácil codificarlo en esProc SPL de código abierto:

Supongamos que el valor del parámetro arg1 es:

eyJhIjo2MywiYyI6Mjk4LCJuIjoxLCJzIjoxLCJlIjo0MCwicCI6NH0=

Image description
Como lenguaje de cálculo de datos estructurados profesional y de código abierto, SPL es conveniente para manejar varias fuentes de datos, incluido JSON.

Declaración de liberación Este artículo se reproduce en: https://dev.to/esproc_spl/how-to-parse-key-value-pairs-from-a-base64-encoded-stringeg11-a6e?1 Si hay alguna infracción, comuníquese con Study_golang @163.com eliminar
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3