Check it out:
s/<a href\(\_[^>]*\)>/<a href\L\1>/
Ce dit: match de <a href
, suivie par zéro ou plusieurs caractères en plus >
, y compris les nouvelles lignes (indiquées par \_
), puis enfin un >
. Remplacez-le par <a href
, le texte capturé converti en minuscules (indiqué par \L
) et le suivi >
.
De toute évidence, vous êtes seul s'il y a un >
quelque part dans votre tag, mais c'est la vie.
(Et dans le cas où ce n'est pas clair, vous allez utiliser cela comme :%s/.../...
ou :<range>s/.../.../
pour certains petits range.)
Pour utiliser sur plusieurs fichiers, vous utiliserez windo
, bufdo
ou tabdo
(selon si les fichiers sont ouverts en tant qu'onglets, fenêtres ou tout simplement en tant que tampons). Il y a beaucoup de documentation là-bas:
En général, il regardera probablement quelque chose comme ceci:
:tabdo <range>s/.../.../
:windo <range>s/.../.../
:bufdo <range>s/.../.../ | w
Je ve a ajouté une commande write à la version bufdo, car elle ne peut pas passer à le prochain tampon sans enregistrer le courant. Vous pourriez le faire aussi pour les autres, si vous vouliez écrire immédiatement, mais ils travailleraient sans. C'est à vous d'ouvrir tous les fichiers - le plus simple est juste vim <lots of files>
pour les obtenir en tant que tampons, ou vim -o <lots of files>
pour les obtenir en tant que fenêtres (utilisez -O
pour diviser verticalement au lieu d'horizontalement).
Merci beaucoup, cela devrait être exactement ce que je voulais, je vais vérifier tout de suite! –