Expresiones Regulares

Slides:



Advertisements
Presentaciones similares
Filminas Quinta semana
Advertisements

Compiladores (23/04/ :35) Compiladores Tema 3 Análisis Lexicográfico Scanners.
LAS EXPRESSIONS REGULARES 4 DAY 9 - 2/2/15 SPAN 4350 Cultura computacional en español Harry Howard Tulane University.
Expresiones Regulares
Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos.
FUNDAMENTOS DE PROGRAMACIÓN VARIABLES, CONSTANTES Y TIPOS DE DATOS EN C.
Helpers en ASP.NET MVC3. Introducción Los helpers son una herramienta muy potente para generar nuestro propio código HTML dentro de las vistas. Los helpers.
Tipos genéricos Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 3.
Funciones, expresiones y control en Alice
Unidad V: Estatutos en Basic De control o selección if. De ciclos: Do, for, while. Otros estatutos. Solución de problemas aplicando estatutos de control.
INTRODUCCIÓN DEL LENGUAJE DE PROGRAMACIÓN SCRATCH Elaborado por: Elvia R. De Gracia C.
Ciclos disponibles en Visual Basic Nury Capera Tovar.
CICLOS CONDICIONALES DINÁMICOS Y CICLOS CONDICIONALES FIJOS Aixa Sosa Colón NE: Programación 2250 – 3240 ONL Profesora. Rebecca Acevedo Rivera.
Lenguaje de Programacio Python Presentado por Jubel Crispán Materia Informatica Educativa.
1 LENGUAJES DE PROGRAMACIÓN. Son aplicaciones específicas diseñadas para crear otras aplicaciones o programas. Son programas para crear programas. 2.
Trucos Ofimática II Trucos ofimáticas. ¿Cómo nos pueden ayudar?
SERIES Y SUMATORIAS.
Operadores Java es un lenguaje rico en operadores, que son casi idénticos a los de C/C++.
ROBERTO PINEDA FLORES. ALEXIS JULIAN VELAZQUEZ NAVA.
Olimpiadas Chilenas de Informática - Formación
Métodos y parámetros.
Estructuras de Datos Aun en problemas muy simples surge la necesidad de agrupar valores elementales de alguna manera. Cuando representamos una caja de.
Conceptos básicos de programación
Introducción a C Parte 1 Aurelio Sanabria Estructuras de datos
Algunas Características de C++ no presentes en C
ALGORITMOS, LENGUAJES Y TECNICAS DE PROGRAMACION
Programación I MC Beatriz Beltrán Martínez
Tema 4 Elementos para el Desarrollo de Algoritmos
II QUIMESTRE PARCIAL I VISUAL.
Tema 3. Fundamentos para la construcción de código a partir del algoritmo Objetivo: El alumno construirá programas utilizando el lenguaje de programación.
Algunas Características de C++ no presentes en C
Leccion 5: Escogiendo un Tipo de Variable
Bucles y estructuras de decisión
Definición y Conversión de datos
MATLAB 6.5 Clase 3: Funciones básicas e Introducción a la Programación
QUÈ ES VISUAL BASIC ES UN LENGUAJE DE PROGRAMACIÒN QUE SE HA DISEÑADO PARA FACILITAR EL DESARROLLO DE APLICACIONES EN EL ENTORNO GRÀFICO. (GUI GRAPHICAL.
Certificado de Hacking Ético Experto(Chee)
Programación PHP condicional IF saregune CC 2009.
Unidad 1. Conceptos básicos
Unidad 3. Introducción a la programación
Estructuras de control en PHP
Expresiones regulares
PROGRAMACIÓN 1 INTRODUCCIÓN
Aplicaciones de RECURSIVIDAD
Taller de certificación Internacional
Búsqueda bibliográfica
RIESGOS Y CONTROLES Definiciones Tipos de Riesgos Tipos de Control.
HERRAMIENTAS DE PROGRAMACIÓN
El Lenguaje C: Elementos Básicos
EXPRESIONES REGULARES COMPUTACIÓN 2. EXPRESIONES REGULARES Es una secuencia de caracteres que van a formar un patrón, este se utiliza para realizar búsquedas.
Sistemas Numéricos 1. Introducción 2. Sistema de Numeración Decimal
Características de “C”
Programación I MC José Andrés Vázquez Flores
4.- Sentencia SELECT simple
Tema 3: Operadores Antonio J. Sierra.
Bucles y estructuras de decisión
PROGRAMACIÓN (2).
Introducción a la Estadística Informática
Estructuras de Datos Aun en problemas muy simples surge la necesidad de agrupar valores elementales de alguna manera. Cuando representamos una caja de.
Centro Universitario UAEM Ecatepec
Ejercicio: dada la cadena «AUGAAAAUUUAGUUAGUUAGU»
Escuela Nacional de Antropología e Historia (ENAH)
Curso de Programación Estructurada
Informática Ingeniería en Electrónica y Automática Industrial
Expresiones algorítmicas
JAVA: elementos básicos
Expresiones Regulares. Introducción Las expresiones regulares permiten expresar patrones de búsqueda genéricos dentro de cadenas. Ejemplos: a[lnm]a -
Variables, Expresiones y Enunciados
Tema 8. Estructuras de decisión. Clases 1 y 2.
Macros EN EXCEL.
Transcripción de la presentación:

Expresiones Regulares ^(?:(?:(?:0?[13578]|1[02])(\/|-|\.)31)\1|(?:(?:0?[13-9]|1[0-2])(\/|-|\.)(?:29|30)\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})$|^(?:0?2(\/|-|\.)29\3(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:(?:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(?:(?:1[6-9]|[2-9]\d)?\d{2})$ Augusto Studer 06/11/2015

1. ¿Qué son y para qué sirven?

Una expresión regular, es una secuencia de caracteres que forma un patrón de búsqueda, principalmente utilizada para la búsqueda de patrones de cadenas de caracteres u operaciones de sustituciones. las expresiones regulares proveen una manera muy flexible de buscar o reconocer cadenas de texto.

2. ¿Por qué utilizarlas?

Comodín - *.txt se puede matchear como .*\.txt$ Potentes y flexibles, permiten representar búsquedas complejas de manera simple. Pueden ser muy rápidas. Reducen la programación. (Requieren de tiempo para aprender a UTILIZARLAS BIEN )

3. Manipulando cadenas de caracteres

(?=(.*[a-zA-Z]){5})^[0-9a-zA-Z]{8,}$ Validaciones Email public static boolean check(String email) { String name = email.substring(0,email.indexOf('@')); String domain = email.substring(email.indexOf('@')+1, email.length()); … _ } Password 8 caracteres de largo, habiendo al menos 5 letras. public static boolean check(String password) { if(password.length() >= 8){ int count = 0; for (int i = 0, len = password.length(); i < len; i++) { if (Character.isLetter(password.charAt(i))) { count++; } } if(count >= 5) { return true; } else { return false; } return false; } (?=(.*[a-zA-Z]){5})^[0-9a-zA-Z]{8,}$

Ejemplo: RFC822 - Mail Address (?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t] )+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?: \r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:( ?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\0 31]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\ ](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+ (?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?: (?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z |(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n) ?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\ r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n) ?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t] )*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])* )(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t] )+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*) *:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+ |\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r \n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?: \r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t ]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031 ]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\]( ?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(? :(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(? :\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*)|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(? :(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)? [ \t]))*"(?:(?:\r\n)?[ \t])*)*:(?:(?:\r\n)?[ \t])*(?:(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]| \\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<> @,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|" (?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t] )*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\ ".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(? :[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[ \]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?:[^()<>@,;:\\".\[\] \000- \031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|( ?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n)?[ \t])*(?:@(?:[^()<>@,; :\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([ ^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\" .\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\ ]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\ [\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\ r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\] |\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)?(?:[^()<>@,;:\\".\[\] \0 00-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\ .|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[^()<>@, ;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(? :[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*))*@(?:(?:\r\n)?[ \t])* (?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\". \[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t])*(?:[ ^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\] ]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:(?:\r\n)?[ \t])*)(?:,\s*( ?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\ ".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:( ?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[ \["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t ])*))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t ])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(? :\.(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+| \Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*|(?: [^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\ ]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)*\<(?:(?:\r\n) ?[ \t])*(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\[" ()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n) ?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<> @,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*(?:,@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@, ;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\.(?:(?:\r\n)?[ \t] )*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\ ".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*)*:(?:(?:\r\n)?[ \t])*)? (?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\". \[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t])*)(?:\.(?:(?: \r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\[ "()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))*"(?:(?:\r\n)?[ \t]) *))*@(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t]) +|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*)(?:\ .(?:(?:\r\n)?[ \t])*(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z |(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)*\](?:(?:\r\n)?[ \t])*))*\>(?:( ?:\r\n)?[ \t])*))*)?;\s*)

“Some people, when confronted with a problem, think: “I know, I'll use regular expressions.” Now they have two problems.” Jamie Zawinski

4. Conceptos Básicos

Metacaracteres \ - diagonal invertida: elimina el metavalor del siguiente caracter, por ej: \^. . - punto: Coincidir con cualquier caracter, excepto el de final de línea. ^ - intercalación: Coincidir con el comienzo de una línea, por ej: ^A. [^] - intercalación entre paréntesis rectos: Coincidir con cualquier caracter, excepto los listados entre paréntesis rectos, por ej: [^0-9]. $ - dólar: Coincidir con el final de una linea, por ej: A$. | - barra vertical: Coincidir con la expresión regular que la precede ó con la que la sucede. [ ] - paréntesis rectos: Coincidir con cualquier caracter listado dentro de los mismos, por ej: [abcde]. Se puede utilizar el guión (-) para definir un rango, por ej: [0-9]. ( ) - paréntesis: Agrupa a una o más expresiones regulares para conformar una Expresión Regular Lógica que consiste de dos sub-expresiones regulares. Se utiliza también para anular la precedencia estandar de ciertos caracteres.

Metacaracteres ! - exclamación: Negar el siguiente caracter o expresión regular. ? - pregunta: Coincidir 0 o 1 vez. * - asterisco: Coincidir 0 o más veces. + - suma: Coincidir 1 or más veces. {n} - n entre corchetes: Coincidir exactamente n veces. {n,} - n, entre corchetes: Coincidir n o más veces. {,n} - ,n entre corchetes: Coincidir n o menos veces. {n,m} - n,m entre corchetes: Coincidir al menos n veces pero no más de m.

Código de colores utilizado en los ejemplos: Loop Studio. - String a la cual aplicamos la regex. regex - expresión regular (rojo) match - coincidencia en el String analizado (verde)

/o/ - un caracter específico: Loop Studio. /op/ - una secuencia de caracteres: Loop Studio. /\./ - con escapeo de metacaracteres: Loop Studio. /./ - sin escapeo de metacaracteres: Loop Studio.

Conjuntos de caracteres: Cualquiera de las dos: /[ot]/ - coincide con uno de varios caracteres: Loop Studio. segunda, tercera y cuarta coincidencia: Loop Studio. /St[ua]dio/ - coincide con Studio y Stadio: Loop Stadio. /[0-9]/ - coincide con un rango de caracteres: ID3735. /#[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]/ coincide con los colores en hexadecimal, ej: #ec4858. /S[^a]/ - se niega un conjunto de caracteres: Loop Studio. /[^0-9]/ - niega los dígitos: RD3735. “u” “St” “dio” “a”

Caracteres Taquigráficos: /\d/ - coincide con cualquier dígito: ID3735. /\s/ - coincide con espacios en blanco(espacios, tabs, saltos de línea) : Loop Studio. /\w/ - coincide con un "word character" (caracteres alfanuméricos y guión bajo) : Loop Studio. /\s\w/ - coincide con un espacio seguido de un “word character”: Loop_Studio.

Caracteres especiales: /\t/ - coincide con un caracter de tipo tab (ASCII 0x09) /\r/ - coincide con un retorno de carro (carriage return - ↵) (0x0D) /\n/ - coincide con un salto de línea (0x0A) /\r\n/ - coincide con un fin de línea en Windows /\x5E/ - coincide con un caracter específico por su índice hexadecimal en en el conjunto de caracteres (character set), por ej: intercalación ^

Caracteres especiales: ANCHORS Los Anchors no matchean con ningún caracter, matchean con una posición dentro de una cadena de caracteres. /^/ - coincide con el comienzo de una cadena de caracteres: |Loop Studio. /$/ - coincide con el final de una cadena de caracteres: Loop Studio.| /\b/ - coincide con el inicio o fin de una cadena de caracteres: |Loop Studio. Segunda coincidencia: Loop| Studio. Etc... /\B/ - coincide con cualquier posición en donde \b no coincide: L|oop Studio.

También se utilizan para funciones de búsqueda y reemplazo. grupos y referencias: Propósito: Agrupar elementos para luego realizar referencias al mismo. /<([A-Z][A-Z0-9]*)\b[^>]*>.*?</\1>/ : Se requiere del mismo grupo entre < > al comienzo y al final. <h1>hola</h1> También se utilizan para funciones de búsqueda y reemplazo.

Ejemplo completo:

Ejercicio https://regex101.com

Posible Solución: /[#]+[\w\x80-\xFF]+/

para Mas Información visitar: http://www.regular-expressions.info/

Pueden encontrarme en: Gracias! ¿Preguntas? Pueden encontrarme en: email: astuder@loopstud.io skype: elestuskype