parent nodes: EmacsApuntes
Expresiones regulares
Usad el constructor de expresiones regulares M-x regexp-builder
^ Inicio de una línea
$ Final de una línea
. cualquier caracter excepto retorno de línea
La contrabarra nunca se usa sola siempre en combinación con otros caracteres, por ejemplo, si se usa con el punto deja de ser un caracter especial de regexp y se convierte en un carácter literal
\& — Representa la última expresión que ha sido encontrada.
\t — Representa un tabulador.
\r — Representa el "regreso al inicio" o sea el lugar en que la línea vuelve a iniciar.
\n — Representa la "nueva línea" el carácter por medio del cual una línea da inicio. Es necesario recordar que en Windows es necesaria una combinación de rn para comenzar una nueva línea, mientras que en Unix solamente se usa n.
\f — Representa un salto de página
\d — Representa un dígito del 0 al 9.
\w — Representa cualquier carácter alfanumérico.
\s — Representa un espacio en blanco.
\D — Representa cualquier carácter que no sea un dígito del 0 al 9.
\W — Representa cualquier carácter no alfanumérico.
\S — Representa cualquier carácter que no sea un espacio en blanco.
\A — Representa el inicio de la cadena. No un carácter sino una posición.
\Z — Representa el final de la cadena. No un carácter sino una posición.
[ ] Los corchetes sirven para agrupar, por ejemplo para buscar un carácter de un grupo, esto es:
"expresi[óo]n busca la palabra expresión aunque se haya escrito sin tilde
(|) Or --> "(p|m)adre" encuentra tanto padre como madre.
* cero o más veces
+ una o más veces
? cero o una vez
\{n,m\} de n a m veces
Reemplazar cadenas usando expresiones regulares
Regexp Replacement
The M-x replace-string command replaces exact matches for a single string. The similar command M-x replace-regexp replaces any match for a specified pattern.
In replace-regexp, the newstring need not be constant: it can refer to all or part of what is matched by the regexp.
`\&' in newstring stands for the entire match being replaced.
`\d' in newstring, where d is a digit, stands for whatever matched the dth parenthesized grouping in regexp. To include a `\' in the text to replace with, you must enter `\'. For example,
M-x replace-regexp RET c[ad]+r RET \&-safe RET
replaces (for example) `cadr' with `cadr-safe' and `cddr' with `cddr-safe'.
M-x replace-regexp RET (c[ad]+r)-safe RET 1 RET
performs the inverse transformation.
Enlaces de interés
http://www.emacswiki.org/emacs/ReplaceRegexp
http://www.emacswiki.org/emacs/RegularExpressionHelp
http://es.wikipedia.org/wiki/Expresiones_regulares
[camelCaseWordsEnabled: false]