Analizar texto como JSON o XML

En Power Query, puede analizar el contenido de una columna con cadenas de texto mediante la identificación del contenido como una cadena de texto JSON o XML.

Para realizar esta operación de análisis, seleccione el botón Analizar que se encuentra dentro de los siguientes lugares del Editor de Power Query:

  • Pestaña Transformar: este botón transformará la columna existente mediante el análisis de su contenido.

    Parse button inside the Transform tab.

  • Agregar pestaña columna: este botón agregará una nueva columna a la tabla que analiza el contenido de la columna seleccionada.

    Parse button inside the Add column tab.

En este artículo, usará la tabla de ejemplo siguiente que contiene las columnas siguientes que debe analizar:

  • SalesPerson: contiene cadenas de texto JSON sin analizar con información sobre el nombre y el apellido del vendedor, como en el ejemplo siguiente.

    {
       "id" : 249319,
       "FirstName": "Lesa",
       "LastName": "Byrd"
    }
    
  • País: contiene cadenas de texto XML sin análisis con información sobre el País y la División a la que se ha asignado la cuenta, como en el ejemplo siguiente.

    <root>
       <id>1</id>
       <Country>USA</Country>
       <Division>BI-3316</Division>
    </root>
    

La tabla de ejemplo tiene el siguiente aspecto.

Sample source table.

El objetivo es analizar las columnas mencionadas anteriormente y expandir el contenido de esas columnas para obtener esta salida.

Sample final output table.

Como JSON

Seleccione la columna SalesPerson . A continuación, seleccione JSON en el menú desplegable Analizar dentro de la pestaña Transformar . Estos pasos transformarán la columna SalesPerson de tener cadenas de texto en valores record , como se muestra en la siguiente imagen. Puede seleccionar cualquier lugar del espacio en blanco dentro de la celda del valor Record para obtener una vista previa detallada del contenido del registro en la parte inferior de la pantalla.

Parse JSON text string.

Seleccione el icono de expansión situado junto al encabezado de columna SalesPerson . En el menú Expandir columnas, seleccione solo los campos FirstName y LastName , como se muestra en la siguiente imagen.

Parsed JSON text string fields to expand.

El resultado de esa operación le proporcionará la tabla siguiente.

Expanded JSON fields.

Como XML

Seleccione la columna País . A continuación, seleccione el botón XML en el menú desplegable Analizar dentro de la pestaña Transformar . Estos pasos transformarán la columna Country de tener cadenas de texto a valores table como se muestra en la siguiente imagen. Puede seleccionar cualquier lugar del espacio en blanco dentro de la celda del valor Table para obtener una vista previa detallada del contenido de la tabla en la parte inferior de la pantalla.

Parse XML text string.

Seleccione el icono de expansión situado junto al encabezado de columna País . En el menú expandir columnas, seleccione solo los campos País y División , como se muestra en la siguiente imagen.

Parsed XML text string fields to expand.

Puede definir todas las columnas nuevas como columnas de texto. El resultado de esa operación le proporcionará la tabla de salida que busca.

Sample final output table.