JSFiddle - React, Tailwind, and code Playground
JavaScript
const str = 'Isto é uma frase $[var_test["aaaa"].bbb], mais coisas $[var_test["ccc"].ddd].eee.fff mais coisas $[var_test["ccc"].ddd].eee.fff.';
const newStr = str.replace(/(\$\[\w*\[\"[\w-]*\"\]\.\w*)(\])(\.[\w\.]*[^ .])/g, "$1$3$2");
console.log(newStr);
/* OUTPUT: Isto é uma frase $[var_test["aaaa"].bbb], mais coisas $[var_test["ccc"].ddd.eee.fff] mais coisas $[var_test["ccc"].ddd.eee.fff.] */
/* PERTENDIDO: Isto é uma frase $[var_test["aaaa"].bbb], mais coisas $[var_test["ccc"].ddd.eee.fff] mais coisas $[var_test["ccc"].ddd.eee.fff]. */