Comment faire fonctionner le regex dans un Json ?

Résolu
sakura -  
 sakura - 7 janv. 2021 à 23:55
Bonsoir,

voici ma 2 eme questions de la soirée :

en NodeJs , j'utilise tranquillement mon filtre avec regex
  const str = req.body

const result = str.match(/.{1,80}(?!\S)/g);

const newStr = result.join('\n');



res.json({

authData,
text: newStr

})


et au moment de res.json le resultat de newStr ça ne fait plus le saut à la ligne mais on vois le\n exemple : a lampe étrangère qui\n le suivent alors que ça dois être :

a lampe étrangère qui
le suivent


merci d'avance

Configuration: Windows / Chrome 87.0.4280.88

1 réponse

jordane45 Messages postés 38480 Date d'inscription   Statut Modérateur Dernière intervention   4 746
 
Bonjour,

Aucun rapport entre regex et json ....

Par contre, le fait qu'une fois transformé en JSON tu vois apparaitre les caractères comme les \n .. ben.. c'est normal.

Par contre, pour éviter des soucis, il faudra certainement échapper les\n en \\n
Tu peux, par exemple, utiliser
var str = req.body;
var result = str.match(/.{1,80}(?!\S)/g);
var newStr = result.join('\n');
 
// permet d'échapper les caractères comme les \n et \t et les \r            
newStr.replace(/\n/g, "\\\\n").replace(/\r/g, "\\\\r").replace(/\t/g, "\\\\t");

res.json({
      authData,
       text: newStr
 });


1
sakura
 
D'accord, en faite au final je cherche des problème là où il y en pas ????
du coup dans un json impossible d'avoir le même resultat de newStr , automatiquement un json rajoute le \n c'est bien ça ?
0
jordane45 Messages postés 38480 Date d'inscription   Statut Modérateur Dernière intervention   4 746 > sakura
 
Oui
0
sakura > jordane45 Messages postés 38480 Date d'inscription   Statut Modérateur Dernière intervention  
 
D'accord , merci beaucoup d'avoir prie le temps de m'aider aujourd'hui :)
0