⊗jsSpRERP 126 of 294 menu

Poches dans la méthode replace des expressions régulières JavaScript

Lorsqu'on utilise la méthode replace, si nous mettons quelque chose dans une poche (groupe de capture) dans l'expression régulière, dans la chaîne de remplacement nous pouvons insérer le contenu de cette poche en écrivant le signe dollar $ suivi du numéro de la poche. Par exemple, $1 - la première poche, $2 - la deuxième poche et ainsi de suite.

Voyons à quoi cela sert et comment l'utiliser à travers des exemples.

Exemple

Trouvons tous les nombres et remplaçons-les par ces mêmes nombres, mais entre parenthèses. Pour cela, tous les nombres trouvés seront remplacés par eux-mêmes, mais entre parenthèses :

let str = '1 23 456 xax'; let res = str.replace(/(\d+)/g, '($1)');

En conséquence, la variable contiendra ce qui suit :

'(1) (23) (456) xax'

Exemple

Trouvons toutes les chaînes représentant des nombres entourés de 'x' et remplaçons ces nombres par eux-mêmes, mais entourés de signes '!' :

let str = 'x1x x23x x456x xax'; let res = str.replace(/x(\d+)x/g, '!$1!');

En conséquence, la variable contiendra ce qui suit :

'!1! !23! !456! xax'

Exemple

Résolvons le problème suivant : il y a des chaînes de la forme 'aaa@bbb' - des lettres, puis un arobase, puis des lettres. Nous devons inverser les lettres avant le @ et après.

let str = 'aaa@bbb ccc@ddd'; let res = str.replace(/([a-z]+)@([a-z]+)/g, '$2@$1');

En conséquence, la variable contiendra ce qui suit :

'bbb@aaa ddd@ccc'

Problèmes pratiques

Soit une chaîne :

let str = '12 34 56 78';

Inversez les chiffres dans tous les nombres à deux chiffres.

Soit une chaîne avec une date :

let str = '31.12.2025';

Convertissez cette date en '2025.12.31'.

Français
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nous utilisons des cookies pour le fonctionnement du site, l'analyse et la personnalisation. Le traitement des données est effectué conformément à la Politique de confidentialité.
accepter tout personnaliser refuser