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
str = str.replace(/(\d+)/g, function () { // console.log(arguments); // 第一次执行: ["2016", "2016", 7, "pkusoft2016pkusoft2017"] // 第一次执行: ["2017", "2017", 18, "pkusoft2016pkusoft2017"] // 返回的数组和执行exec返回的结果一致 return '0000'; }); console.log(str); // pkusoft0000pkusoft0000
var str = '20171001'; var arr = ["零","壹","贰","叁","肆","伍","陆","柒","捌","玖"]; str = str.replace(/\d/g,function () { var num = arguments[0]; // 把捕获的内容,作为数组的下标 return arr[num]; }); console.log(str); // 贰零壹柒壹零零壹
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!