2010-08-05 3 views
1

Voici ce que je voudrais faire avec une expression régulière: 2 étapes:aide à la recherche de vim/remplacer l'expression régulière complexe

(1) transformer toutes les variables dans une zone sélectionnée comme ceci:

$Sejour_deb_mois 
$Info_pays 

à:

$SejourDebMois 
$InfoPays 

(2) transformer toutes les variables dans une région sélectionnée comme ceci:

$this->Sejour_deb_mois 
$this->Info_pays 

à:

$this->SejourDebMois 
$this->InfoPays 

Je suis sûr que cela peut être fait en utilisant une expression régulière ... mais je ne peux pas comprendre les deux bons qui font le travail ...

Toute aide serait grandement appréciée!

Merci

Olivier Pons

Répondre

6

Pour les deux exemples ci-dessus, cela devrait faire le travail:

s/\(_\)\(.\)/\u\2/g 

Fondamentalement, il est de trouver tous les soulignement et le caractère suivant, en les regroupant avec les parens. Ensuite, il supprime le trait de soulignement et les majuscules d'un caractère.

Si vous avez choisi visuellement la région et : pressé, l'expression entière ressemblera:

:'<,'>s/\(_\)\(.\)/\u\2/g 
+0

Vous aurez besoin d'un: devant le premier exemple; Très bonne réponse –

+0

Cela ne fonctionne pas pour tous, car voici le problème: $ this-> Nom = mb_ereg_replace ("[\\, \", /] "," ", stripslashes (strtoupper ($ this-> Nom))); changements mb_ereg_replace à mbEregReplace –