Diferencia entre revisiones de «Expresiones regulares»

De mobeleader
Ir a la navegación Ir a la búsqueda
 
(No se muestran 2 ediciones intermedias del mismo usuario)
Línea 27: Línea 27:
   * '''/[^0-9]/''' Todo menos los numeros.
   * '''/[^0-9]/''' Todo menos los numeros.


<br /><br />
<br />


{| style="width: 100%"
{| style="width: 100%"
Línea 45: Línea 45:
|-
|-
| style="padding: 2px; background-color: #fafafa; font-weight: bold" | [:alpha:]
| style="padding: 2px; background-color: #fafafa; font-weight: bold" | [:alpha:]
| style="padding: 2px; background-color: #fafafa" | Salo letras
| style="padding: 2px; background-color: #fafafa" | Solo letras
| style="padding: 2px; background-color: #fafafa" | [a-zA-Z]  
| style="padding: 2px; background-color: #fafafa" | [a-zA-Z]  
| style="padding: 2px; background-color: #fafafa" | \p{L}\p{Nl}  
| style="padding: 2px; background-color: #fafafa" | \p{L}\p{Nl}  
Línea 135: Línea 135:
| style="padding: 2px; background-color: #fafafa" | \p{XDigit}
| style="padding: 2px; background-color: #fafafa" | \p{XDigit}
|}
|}
Más información en: https://www.regular-expressions.info/posixbrackets.html
<br />


== Comodines y abreviaturas ==
== Comodines y abreviaturas ==

Revisión actual - 09:01 19 oct 2018

Carácteres especiales

Estos caracteres deberán ir protegidos en caso de que no se quieran expandir.

 * [ ] corchetes (para generar rangos)
 * () parentesis (agrupa bloques de correlaciones)
 * {} llaves (contiene la cantidad de veces)
 * - guión (especifica rangos)
 * + más (al menos una vez)
 * * asterisco (una o ninguna vez)
 * . Punto (cualquier caracter)
 * ^ circumflejo (principio de la cadena o negar carácteres)
 * $ dolar (final de la cadena)
 * ? interrogante cerrado (un caracter)
 * | tuberia unix (uno u otro valor)
 * \ barra invertida (se usa para tratar de forma normal un caracter especial)
 * / barra del 7 (para iniciar o finalizar una expresión regular)

Rangos

 * /[a-z]/ letras minúsculas
 * /[A-Z]/ letras mayúsculas
 * /[0-9]/ numeros
 * /[,'¿!¡;:\.\?]/ caracteres de puntuacion
 * /[A-Za-z]/ letras del alfabeto (del ingles claro ;)
 * /[A-Za-z0-9]/ todos los caracteres alfanumericos habituales. No incluyen acentos ni ñ
 * /[^a-z]/ El simbolo ^ es el de negación. Esto es decir, TODO MENOS las letras minusculas.
 * /[^0-9]/ Todo menos los numeros.


POSIX Descripción ASCII Unicode Shorthand Java
[:alnum:] Letras y números [a-zA-Z0-9] [\p{L}\p{Nl}\p{Nd}] \p{Alnum}
[:alpha:] Solo letras [a-zA-Z] \p{L}\p{Nl} \p{Alpha}
[:ascii:] Caracteres ASCII [\x00-\x7F] \p{InBasicLatin} \p{ASCII}
[:blank:] Espacio y tabulación [ \t] [\p{Zs}\t] \h \p{Blank}
[:cntrl:] Caracteres de control [\x00-\x1F\x7F] \p{Cc} \p{Cntrl}
[:digit:] Dígitos [0-9] \p{Nd} \d \p{Digit}
[:graph:] Caracteres visibles
(todo excepto espacios
y caracteres de control)
[\x21-\x7E] [^\p{Z}\p{C}] \p{Graph}
[:lower:] Letras en minúsculas [a-z] \p{Ll} \l \p{Lower}
[:print:] Caracteres visibles y espacios
(todo excepto caracteres de control)
[\x20-\x7E] \P{C} \p{Print}
[:punct:] Puntuación (y símbolos). [!"\#$%&'()*+,\-./:;<=>?@\[\\\]^_`{|}~] \p{P} \p{Punct}
[:space:] Todos los caracteres de espacio
incluyendo saltos de línea
[ \t\r\n\v\f] [\p{Z}\t\r\n\v\f] \s \p{Space}
[:upper:] Letras mayúsculas [A-Z] \p{Lu} \u \p{Upper}
[:word:] Palabras
(letras, números y guiones bajos)
[A-Za-z0-9_] [\p{L}\p{Nl}\p{Nd}\p{Pc}] \w \p{IsWord}
[:xdigit:] Dígitos hexadecimales [A-Fa-f0-9] [A-Fa-f0-9] \p{XDigit}

Más información en: https://www.regular-expressions.info/posixbrackets.html

Comodines y abreviaturas

 * \w para indicar word (alfanumericos y _)
 * \W para indicar lo opuesto al word.
 * \s para concordar con los caracteres los espacios y otros caracteres en blanco (\t \n \r y espacio)
 * \S para lo contrario a \s
 * \d para concordar con un digito
 * \D para lo contrario al \d
 * \A para empezar a mirar por el principio del string
 * \Z para empezar a mirar por el final de string
 * \b concuerda con las "word boundaries" los limites de palabra
 * \B lo opuesto a \b

Modificadores

Los modificadores se añaden tras el último delimitador de la expresión regular. Ejemplo: '/[a-z]/i' (busca caracteres sin distinguir mayúsuclas de minúsculas)

 * g global reemplaza TODAS las ocurrencias en el texto.
 * i insensitive, es para evitarnos problemas con la capitalizacion. A = a
 * o interpola, variables solo una vez
 * m multiples lineas, acepta strings de varias lineas
 * s single line, solo mira el string de una linea.
 * x extensiones, permite usar extensiones de expresion regular.