J'ai créé une petite appli javascript qui parse un document HTML et traduit les mots trouvés d'une langue à une autre.
Le script charge des fichiers JSON et fait la traduction avec une expression régulière.
Voici l'expression régulière que j'utilise:
Code : Tout sélectionner
let html = "...mon code HTML...";
let k = "motARemplacer";
let v = "motDeRemplacement";
let regex = new RegExp(`\\b${k}\\b`, 'g');
html = html.replace(regex, v);
Dans mon fichier JSON français, j'ai bien sûr "Voiture rouge". Mais ceci n'est pas utilisé car "Red car" a précédemment été transformé en "Rouge car".
Comment puis-je ajuster mon regex pour prendre en compte la différence entre "Red" et "Red car"? A savoir, traduire "Red" en "Rouge", mais ne pas traduire (ignorer) "Red car"?
En vous remerciant pour vos réponses.