Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

270
Views
¿Cómo elimino/reemplazo caracteres Unicode en Node16?

Tengo un archivo que leí en un objeto JSON

 { "city": "Delicias", "address": "FRANCISCO DOMÍN\u0002GUEZ 9" }

Usamos esta dirección para pasarla a la API de mapas de Google para obtener la latitud y la longitud, pero la API de mapas de Google no está contenta con los caracteres que no son utf-8 como o \u0002

He buscado por todas partes y no puedo encontrar una solución que funcione en Node16

puedo deshacerme de con JSON.stringify(jsonObject).replace(/[^\x00-\x7F]/g, "")

Pero nada de lo que he probado parece deshacerse de \u0002

Cosas que he intentado

 const escapeUnicode = (str) => { return str.replace(/[\u00A0-\uffff]/gu, function (c) { return "\\u" + ("000" + c.charCodeAt().toString(16)).slice(-4); }); }; JSON.parse(JSON.stringify(jsonObject)); JSON.parse(escapeUnicode(JSON.stringify(jsonObject))); JSON.parse(JSON.stringify(jsonObject).replace(/[^ -~]+/g, "")); JSON.parse(decodeURIComponent(JSON.stringify(jsonObject)));

He intentado todo lo anterior, y un montón de diferentes expresiones regulares .replace() ninguno parece funcionar,

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Después de mucho buscar e intentar, descubrí esta forma posible de deshacerme de los códigos Unicode y reemplazarlos con el carácter utf-8 adecuado.

 let jsonObj = { "city": "Delicias", "address": "FRANCISCO DOMÍN\u0002GUEZ 9" }; myString = JSON.stringify(jsonObj); const decodeString = (str) => { return str.replace(/\\u[\dA-F]{4}/gi, (unicode) => { return String.fromCharCode(parseInt(unicode.replace(/\\u/g, ""), 16)); }); } console.log("Decoding a unicode: ", decodeString("\\u00C4")); //double \\ to stop auto conversion by JS console.log("Decoded jsonString: ", decodeString(myString));

Supongo que \u0002 es simplemente nada, ¿verdad? De todos modos, se supone que esta función convierte cualquier Unicode a utf-8

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!