Created
September 8, 2017 19:08
-
-
Save porfidev/23c1c6bf330ed6d16e961890625b9288 to your computer and use it in GitHub Desktop.
Trucos para Expresiones regulares
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** Declaración de expresiones regulares **/ | |
var regexp = new RegExp('abc'); // Objeto | |
var regexp2 = /abc/; // Literales | |
/** Encontrar al menos un carácter en la lista **/ | |
var regexp3 = /[0123456789]/; | |
var regexp3alter = /[0-9]/; | |
/** GUIA RAPIDA DE ATAJOS | |
* | |
* \d => cualquier número | |
* \w => cualquier letra o número | |
* \s => cualquier espacio en balnco (tabs, saltos de linea, etc.) | |
* \D => cualquiera que no sea un número | |
* \W => cualquiera que no sea una letra o numero | |
* \S Cualquiera que no sea un espacio en blanco | |
* . Cualquier caracter (excepto salto de linea) | |
*/ | |
/** Evaluar una cadena tipo fecha AAAA-MM-DD (sin limites de 0 a 12) **/ | |
var fechaFalsa = /\d\d\d\d-\d\d-\d\d/; // TEST: 1963-12-15 | |
/** Negación de un valor, encontrar un elemento que no este**/ | |
var algomas = /[^\d]/; //TEST: 213ok | |
/** | |
* + => Debe existir 1 o más | |
* * => Puede existir | |
*/ | |
/** Uno mas numeros **/ | |
var morenumber = /\d+/; // TEST: 123ok | |
/** Patron opcional (la letra "m" puede o no venir)**/ | |
var opcione = /Hola m?undo/; // TEST: Hola undo | |
/** Patron opcional **/ | |
// {min-max} ejemplo: {1,2} | |
// ejemplo de limite: {2,} (del 2 al infinito) | |
var opcionalconjunto = /\d{1,4}-\d{1,2}-\d{1,2} \d{1,2}:\d{1,2}/ | |
// TEST: 2012-12-12 20:11 | |
/** Patron sin distincion de mayus - minus **/ | |
var sinDistincion = /Hola Mundo/i; | |
/** Agrupación de expresiones **/ | |
var conjunto = /Woo+(hoo+)+/i; // Test: Woohooooo || WooHoohoo | |
/** Exigir la existencia de un patrón **/ | |
var patreon = /\bcat\b/; //TEST: catalogo => fail | |
// cat => ok | |
/** Alternativas en un patrón **/ | |
var opciones = /pollo|res|pescado/; // TEST: Ramses come pollo => ok | |
/** Evaluar al inicio o al final | |
* | |
* ^ buscar al inicio de cadena (se activa con altgr + ñ ) | |
* $ buscar al fin de cadena | |
* **/ | |
var testinicio = /^Hola/; //TEST: Hola Mundo => ok | |
var testfinal = /Mundo$/; //TEST: Hola Mundo => ok | |
var combinedOR = /^Hola|Mundo$/; //TEST: Hola Mundo => ok (busca si inicia con Hola O termina con Mundo, pero no ambas) | |
/** Buscar el patron n veces y no solo el primero **/ | |
var buscarTodos = /papu/g; | |
/** JAVASCRIPT **/ | |
new RegExp().test(); // Si contiene el patron true || false | |
new RegExp().exec(); // Si contiene el patron (1 o mas veces) y en que ubicaciones las encontro | |
// return array; | |
'some string'.match(new RegExp()); //Igual al exec | |
'some string'.replace(new RegExp(), 'reemplazo'); //Cambia un patron por determinado valor |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment