Diferencia entre revisiones de «Expresiones regulares»
Ir a la navegación
Ir a la búsqueda
m →Rangos |
|||
Línea 26: | Línea 26: | ||
* '''/[^a-z]/''' El simbolo ^ es el de negación. Esto es decir, TODO MENOS las letras minusculas. | * '''/[^a-z]/''' El simbolo ^ es el de negación. Esto es decir, TODO MENOS las letras minusculas. | ||
* '''/[^0-9]/''' Todo menos los numeros. | * '''/[^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:] | |||
|Salo 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} | |||
|} | |||
== Comodines y abreviaturas == | == Comodines y abreviaturas == |
Revisión del 08:42 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:] | Salo 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} |
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.