Regex, caractères de contrôle
Astuces et memento VIM
^M
Dans .vimrc :
set fileformats=dos,unix (évite les ’^M’ de fin de lignes )
:% s/CTRL-v CTRL-m/\r/g remplace tous les ’^M’ par des sauts de ligne
voir aussi ^M
Car.CTRL
CARACTÈRE DE CONTRÔLE :
Dépendants de la machine :
- \a alarme
- \f saut de page ( form feed ) [imprimante]
- \e échappement ( esc )
- \n nouvelle ligne (newline)
- \r retour chariot ( carriage return )
- \b espace inverse ( backspace ) [seulement dans les classes]
- \t tabulation
Classes courantes :
- \d chiffres
- \s espace [ \f\n\r\t]
- \w constituant de mots : [a-zA-Z0-9 et caractères accentués]
- .
- \D \S \W en sont les compléments
Notification d’octets :
- \num = caractère en octal
- \xnum = caractère en héxadécimal
- \c char = caractère de contrôle
Substitutions
DIVERSES SUBSTITUTIONS SOUS vim :
=> Remarques spécifiques à vim ( ou non )
Ajouter « rm » au début des lignes se terminant par « .bkp » :
Supprimer les lignes vides :
Supprimer les lignes blanches ou vides :
:% s/^[^I ]\n//g
:% g/^[^I ]/d=> Avec g/ : On peut appliquer une commande (d) à une ligne sélectionnée !
Supprimer les lignes contenant une regex
:% g/regex/d=> Avec g/ : On peut appliquer une commande (d) à une ligne sélectionnée !
- Moteur NFA traditionnel = comme perl
- Retours arrières = 9 maximum (Perl : illimité )
- vim , egrep : \1 à \9
- ( perl : $1 à $99 )
- & représente la chaine de recherche -ou regex- : c’est différent de la capture entre parenthèses \( \) qui représente la chaine trouvée (\1 à \9)
HTML
Pour coder en html les caractères accentués :
:% s/[ê]/\ê/g- mettre en classe de caractère unique le caractère accentué.
- échapper par un anti-slash «
\» le caractère esperluète «&»
[1] The GIMP ne met pas cet attribut dans le code qu’il crée
[2] à l’intérieur d’une balise <area ... />
[3] g/recherche/ sélectionne les lignes, la suite s’applique à chaque ligne
webmaster
Articles de cet auteur
fr
GNU, LINUX, BSD, LL
AIDES GNU/LINUX
VIM et sed
?
