Javascript convertir PascalCase à underscore_case
Comment puis-je convertir PascalCase
chaîne en underscore_case
chaîne? J'ai besoin de conversion de points à souligner que bien.
par exemple. convertir
TypeOfData.AlphaBeta
en
type_of_data_alpha_beta
- Essayez ce lien copain il vous aidera à coup sûr jamesroberts.nom/blog/2010/02/22/...
Vous devez vous connecter pour publier un commentaire.
Vous pouvez essayer les étapes ci-dessous.
Capturer toutes les lettres majuscules et de correspondre à la précédente facultatif caractère de point.
Puis convertir le capturé les majuscules en minuscules et revenir ensuite en arrière pour remplacer la fonction
_
que le caractère précédent. Cela sera réalisé de manière anonyme en fonction de la pièce de rechange.Ce serait de remplacer le départ en majuscules lettre à
_
+ lowercase_letter.Enfin enlever le départ de soulignement vous donnera le résultat souhaité.
OU
JS:
JS:
MotorRMP
enmotor_rpm
au lieu demotor_r_p_m
? ouBatteryAAA
enbattery_aaa
au lieu debattery_a_a_a
.alert(s.replace(/\.?([A-Z]+)/g, function (x,y){return "_" + y.toLowerCase()}).replace(/^_/, ""));
u es la bienvenue
JS:
Alternativement à l'aide de lodash:
Exemple:
Lodash est une belle bibliothèque pour donner raccourci de beaucoup tous les jours js tâches.Il existe de nombreuses autres fonctions de manipulation de chaîne tels que
camelCase
,kebabCase
etc.Cela va vous faire aller assez loin: https://github.com/domchristie/humps
Vous aurez probablement à utiliser des regex pour remplacer pour remplacer le "." avec un trait de soulignement.
Essayer cette fonction, j'espère que ça aide.
CamelToUnderscore
est nécessaire.Cette solution résout le non de fuite acronyme problème avec les solutions ci-dessus
J'ai porté le code dans Million cents soixante quinze mille deux cent huit de Python, JavaScript.
Code Javascript
De Travail Exemples:
remplace toutes les lettres majuscules avec un trait de soulignement et minuscules, puis supprime le trait de soulignement.