/ / Cómo reemplazar la carga útil del objeto json en mule - regex, mule, mule-studio, mule-component, mule-el

Cómo reemplazar la carga útil del objeto json en mule - regex, mule, mule-studio, mule-component, mule-el

Preparado json solicitud como abajo.

[{
"type": "John",
"attributes": {
"AA": [{
"value": "1234"
}]
}
},
{

}
]

Necesito reemplazar el de abajo con vacío, es decir, en blanco "".

,
{

}

¿Podría por favor proporcionar la solución para esto.

Finalmente debería venir como abajo.

[{
"type": "John",
"attributes": {
"AA": [{
"value": "1234"
}]
}
}
]

Respuestas

0 para la respuesta № 1

Esta expresión regular coincide con la secuencia dada, sin embargo, probablemente deba cambiarla para aceptar todas las posibilidades:

/, n{W+?}/

Solo reemplaza el partido por nada.


0 para la respuesta № 2

¿Obtienes la respuesta como un objeto JSON o como una cadena?

Si obtiene la respuesta como un objeto, debe alinearlo antes de aplicar la función de reemplazo:

payload = JSON.parse(JSON.stringify(payload).replace(/,{}/, ""))

Si la respuesta que publicó anteriormente ya está tildada y no la ha analizado en un objeto, el método es:

payload = payload.replace(/,s+ns+{ns+}/,"")

0 para la respuesta № 3

Para lograr este propósito, podemos usar la expresión DataWeave ya sea en Transformar mensaje o en MEL.

En este caso prefiero usarlo en MEL: #[dw("payload filter (sizeOf $) > 0")]


0 para la respuesta № 4

Puedes usar el flatten operador aquí como se indica a continuación. Se debe eliminar vacio json. También puedes intentar reemplazar {} con null y añadiendo skipnullon="everywhere"

flatten payload