Maison  >  Article  >  interface Web  >  Expressions régulières dans les expressions Replace_Regular

Expressions régulières dans les expressions Replace_Regular

小云云
小云云original
2018-01-05 09:08:471622parcourir

Cet article présente principalement les connaissances pertinentes sur les expressions régulières dans Replace. L'article présente la méthode de remplacement pour remplacer les caractères originaux par de nouveaux caractères. J'espère que cela pourra aider tout le monde.

replace : remplacez les caractères d'origine par de nouveaux caractères

1. La chaîne de remplacement remplace


var str = 'pku2016pku2017';
str = str.replace('pku', 'pkusoft');
console.log(str); // pkusoft2016pku2017

dans Sans expressions régulières, un seul caractère peut être remplacé à chaque exécution. Chaque exécution commence à 0. S'il y a des doublons, tous les caractères ne peuvent pas être remplacés

2. Remplacement régulier du remplacement


str = str.replace(/pku/g, 'pkusoft'); // 使用正则的全局匹配
console.log(str); // pkusoftsoft2016pkusoft2017

Tout d'abord, tout comme exec capture, capturez toutes les expressions régulières qui nous correspondent, puis remplacez le contenu capturé par le nouveau contenu que nous devons remplacer.
/pku/g suit cette règle habituelle pour capturer tous les éléments correspondants dans str, puis les remplacer tous par 'pkusoft'
remplacer si le deuxième paramètre est une fonction

Fonction anonyme La. le nombre de fois où elle est exécutée dépend du nombre de fois où l'expression régulière peut être capturée dans la chaîne

2. Chaque fois que la fonction anonyme est exécutée, la valeur des arguments est très similaire au contenu capturé via exec

3. return La valeur est le contenu qui doit être remplacé


str = str.replace(/pku/g, function () {
 console.log(arguments);
 // 第一次执行: ["pku", 0, "pku2016pku2017"]
 // 第一次执行: ["pku", 7, "pku2016pku2017"]
 // 返回的数组和执行exec返回的结果一致
 return 'pkusoft';
});
console.log(str); // pkusoftsoft2016pkusoft2017
Capture de groupe de remplacement


str = str.replace(/(\d+)/g, function () {
 // console.log(arguments);
 // 第一次执行: ["2016", "2016", 7, "pkusoft2016pkusoft2017"]
 // 第一次执行: ["2017", "2017", 18, "pkusoft2016pkusoft2017"]
 // 返回的数组和执行exec返回的结果一致
return '0000';
});
console.log(str); // pkusoft0000pkusoft0000
Application du remplacement


var str = '20171001';
var arr = ["零","壹","贰","叁","肆","伍","陆","柒","捌","玖"];
str = str.replace(/\d/g,function () {
 var num = arguments[0]; // 把捕获的内容,作为数组的下标
 return arr[num];
});
console.log(str); // 贰零壹柒壹零零壹
Recommandations associées :


Introduction de l'instance de validation de formulaire d'expression régulière

JS utilise des expressions régulières pour trouver la longueur de la sous-chaîne continue la plus longue

Utilise des expressions régulières pour mettre en évidence les caractères

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn