J'ai suivi de la fucntion JavaScript:
p>
function spinalCase(str) {
str = str.replace(/([a-z])([A-Z])/g, '$1 $2');
console.log(str);
}
spinalCase('thisIsSpinalTapIp');3 Réponses :
La regex analyse chaque compte d'une séquence d'une lettre minuscule et majuscule, stocke la minuscule dans suivant match: p>
thi siss fort> Pina Donc, vous auriez la collection 1 $ code> et la majuscule dans 2 $ code> Remplace $ 1 $ 2 code> avec 1 $ 2 $ code>, par exemple, insère un espace. P>
['si', 'ss', 'lt', 'pi'] code> où les espaces seront ajoutés entre p>
Casser-le: P>
Lorsque de tels occurrences sont trouvés, ils sont remplacés par 1 $ 2 $
(Voici 1 $ la lettre minuscule de groupe et 2 $ est une lettre majuscule de groupe 2 séparé par un espace). P>
Voyons maintenant comment ça marche pour ThisisspinaltaPip STRT> P>
La regex ci-dessus correspondra à et remplacez-les avec S i strong>, s s s fort>, La chaîne devient donc Ce lien vous aidera à la visualiser Regex P> ([A-Z]) code> correspond à une lettre minuscule p>
([A-Z]) code> correspond à une lettre majuscule p>
/ ([a-z]) ([A-Z]) / g code> Combinaison correspond à des minuscules suivies d'une lettre majuscule avec le drapeau global qui correspondra à toutes ces occurrences. P>
Grande explication :)
Donc, cela remplace toute la petite lettre de la lettre majuscule?
@creAreAtiveArtBD Il ne remplace pas une petite lettre avec Capital One. Au lieu de cela, il remplace la combinaison d'une lettre petite et majuscule en ajoutant un espace entre eux par ex. il code> sera remplacé par i t code>
Eh bien, alors comment il ressemble à ce résultat Ceci est Spinal Tap IP code>?
Vous avez créé deux groupes Nom 1 $ et 2 $ par parenthèses dans la regex. 1 $ et 2 $ se réfèrent aux chaînes correspondues par ces groupes. P>
et ces chaînes remplaceront 1 $ et 2 $ dans le deuxième paramètre de chaîne.replace. p>
Le nom de chaque groupe est comme $ numéro, le nombre augmentera par la séquence de parenthèses dans la regex. P>
La regex analyse chaque compte d'une séquence d'une lettre minuscule et majuscule, stocke le minuscule dans
1 $ code> et la majuscule dans2 $ code> ... alors il remplace1 $ 2 $ 2 code> avec1 $ 2 $ code>, par exemple, insère un espaceIl n'y a qu'une seule regex avec 2 groupes de capture et elle insère de l'espace entre une lettre minuscule et majuscule