Skip to content

Instantly share code, notes, and snippets.

@porfidev
Created September 8, 2017 19:08
Show Gist options
  • Save porfidev/23c1c6bf330ed6d16e961890625b9288 to your computer and use it in GitHub Desktop.
Save porfidev/23c1c6bf330ed6d16e961890625b9288 to your computer and use it in GitHub Desktop.
Trucos para Expresiones regulares
/** 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