SlideShare una empresa de Scribd logo
1 de 9
Descargar para leer sin conexión
Expresiones regulares
ITI. Erick Aguila Martínez
Expresiones regulares
ITI. Erick Aguila Martínez
Y, ¿Qué es una expresión regular?
Las expresiones regulares son patrones utilizados para encontrar una determinada combinación de
caracteres dentro de una cadena de texto.
¿Para qué sirven?
ITI. Erick Aguila Martínez
Una expresión regular, nos servirá para buscar patrones en una cadena de texto, por ejemplo
encontrar cuantas veces se repite una palabra en un texto, para comprobar que una cadena de texto
tiene una determinada estructura, para saber el nombre de algún archivo y conocer su determinada
extensión, o validar que un email esta bien escrito...
Sintaxis
ITI. Erick Aguila Martínez
Una breve lista de los más utilizados:
• ^ Indica el principio de una cadena
• $ Indica el final de una cadena
• () Un agrupamiento de parte de una expresión
• [] Un conjunto de caracteres de la expresión
• {} Indica un número o intervalo de longitud de la expresión
• . Cualquier carácter salvo el salto de línea
• ? 0-1 ocurrencias de la expresión
• + 1-n ocurrencias de la expresión
• * 0-n ocurrencias de la expresión
•  Para escribir un carácter especial como los anteriores y que sea tratado como un literal
• | Para indicar una disyunción lógica (para elegir entre dos valores: a|b se tiene que cumplir al
menos uno de los dos)
Ejemplos
ITI. Erick Aguila Martínez
La mejor manera de comprender algo es ponerlo en practica y para esto daremos algunos ejemplos
de los cuales entenderemos el uso de la sintaxis anteriormente mencionada.
//Los que están entre la h y la m
String patron = "[a-m&&h-z]";
Pattern p = Pattern.compile(patron);
String texto = "h";
//Busca patrón en el texto
Matcher matcher = p.matcher(texto);
if(matcher.matches()){
System.out.println("Coincide");
}else{
System.out.println("No coincide");
}
En este caso el patrón coincide ya que es un carácter que está
entre la h y la m, pero si en cambiamos el texto por hh, no coincidirá
porque el patrón indique solo busque una letra, no varias.
Ejemplos
ITI. Erick Aguila Martínez
String patron = "[s]$";
//El ^ es que solo encuentre el primero de la cadena, $es solo el ultimo
Pattern p = Pattern.compile(patron);
String texto = "Estamos aprendiendo a usar expresiones regulares";
Matcher matcher = p.matcher(texto);
while(matcher.find()){
System.out.printf("Encontrado %s en %d y final en %dn",
matcher.group(),//patrón
matcher.start(),//donde empieza la palabra encontrada
matcher.end()); //donde acaba la palabra encontrada
}
En este caso buscamos todas las palabras que
acaben en s, y el resultado es el siguiente:
Encontrado s en 47 y final en 48
Te está indicando que la posición en la que
empieza el patrón s es en el carácter 47, y acaba
en el carácter 48. Te indica que se ha encontrado,
y además en que posición.
Ejemplos
ITI. Erick Aguila Martínez
String patron = "a[mp]";//todo lo que tenga una a seguida de un carácter entre m y p
Pattern p = Pattern.compile(patron);
String texto = "Estamos aprendiendo a usar expresiones regulares";
Matcher matcher = p.matcher(texto);
//String result = matcher.replaceAll("x");//Esto reemplaza todo
//System.out.println(result);
//
String result = matcher.replaceFirst("x");//Esto reemplaza solo la primera coincidencia
System.out.println(result);
Para reemplazar, utilizamos el método
ReplaceFirst(), que reemplaza solo la primera
coincidencia, o ReplaceAll(), que reemplaza todo
lo encontrado:
El resultado sería el siguiente:
Estxos aprendiendo a usar expresiones regulares
Ejemplos
ITI. Erick Aguila Martínez
final String patron = "[0-9]+";//Un numero o mas
final String texto = "uno232dos5tres423cuatro";
Pattern p1 = Pattern.compile(patron);
String[] items = p1.split(texto);//Dividimos el texto por las partes encontradas
for (String s : items) {
System.out.println(s);
}
El resultado sería:
uno
dos
tres
cuatro
Un ejemplo de utilización sería por ejemplo limpiar una cadena, quitando todos los números que se
encuentre en una cadena:
Fuente
ITI. Erick Aguila Martínez
Para más información consultar
http://www.tutorial-es.com/java-expresiones-regulares/
https://developer.mozilla.org/es/docs/Web/JavaScript/Guide/Regular_Expressions
https://www.adictosaltrabajo.com/tutoriales/regexsam/
http://programacion.net/articulo/expresiones_regulares_en_java_127

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Yghor flores
Yghor floresYghor flores
Yghor flores
 
Logica matematica
Logica matematicaLogica matematica
Logica matematica
 
Orlando1
Orlando1Orlando1
Orlando1
 
Teoria lógica de predicados-prof. garau
Teoria lógica de predicados-prof. garauTeoria lógica de predicados-prof. garau
Teoria lógica de predicados-prof. garau
 
Cálculo de Predicados
Cálculo de PredicadosCálculo de Predicados
Cálculo de Predicados
 
Calculo de predicados
Calculo de predicadosCalculo de predicados
Calculo de predicados
 
Expresiones Regulares
Expresiones RegularesExpresiones Regulares
Expresiones Regulares
 
Tema 5 arreglos y cadenas por gio
Tema 5   arreglos y cadenas por gioTema 5   arreglos y cadenas por gio
Tema 5 arreglos y cadenas por gio
 
métodos de demostración matemática
métodos de demostración matemática métodos de demostración matemática
métodos de demostración matemática
 
Fundadores/ Inventores del Dominio y el Rango
Fundadores/ Inventores del Dominio y el RangoFundadores/ Inventores del Dominio y el Rango
Fundadores/ Inventores del Dominio y el Rango
 
Calculo de predicados
Calculo de predicadosCalculo de predicados
Calculo de predicados
 
Calculo predicadospartei
Calculo predicadosparteiCalculo predicadospartei
Calculo predicadospartei
 
Logica de predicados1
Logica de predicados1Logica de predicados1
Logica de predicados1
 
CALCULO PROPOSICIONAL
CALCULO PROPOSICIONAL CALCULO PROPOSICIONAL
CALCULO PROPOSICIONAL
 
CALCULO PROPOSICIONAL
CALCULO PROPOSICIONALCALCULO PROPOSICIONAL
CALCULO PROPOSICIONAL
 
Calculo de predicados
Calculo de predicadosCalculo de predicados
Calculo de predicados
 
Leyes del algebra
Leyes del algebraLeyes del algebra
Leyes del algebra
 
Unidad 2 expresiones regulares
Unidad 2 expresiones regularesUnidad 2 expresiones regulares
Unidad 2 expresiones regulares
 
Ernesto
ErnestoErnesto
Ernesto
 
Metodo Demostrativo
Metodo DemostrativoMetodo Demostrativo
Metodo Demostrativo
 

Destacado

Capstone assignment 05 stress reduction lesson 03
Capstone assignment 05 stress reduction lesson 03Capstone assignment 05 stress reduction lesson 03
Capstone assignment 05 stress reduction lesson 03Roberta Gadbury
 
3Com 3C10401A
3Com 3C10401A3Com 3C10401A
3Com 3C10401Asavomir
 
3Com 3C-PC-TP-CABLE
3Com 3C-PC-TP-CABLE3Com 3C-PC-TP-CABLE
3Com 3C-PC-TP-CABLEsavomir
 
Como hacer una_programacion_docente_lomce_2 (1)
Como hacer una_programacion_docente_lomce_2 (1)Como hacer una_programacion_docente_lomce_2 (1)
Como hacer una_programacion_docente_lomce_2 (1)redrigo
 
3.0 la informatica.guia2017
3.0 la informatica.guia20173.0 la informatica.guia2017
3.0 la informatica.guia2017Alexandre Magno
 
About dragonfish
About dragonfishAbout dragonfish
About dragonfishrichwebley
 
E viveram pais para sempre... lx
E viveram pais para sempre... lxE viveram pais para sempre... lx
E viveram pais para sempre... lxAna Varão
 
Roles of Eduactional Technology
Roles of Eduactional Technology Roles of Eduactional Technology
Roles of Eduactional Technology al jim jimenez
 
Idékatalog om beskæftigelsesrettet danskundervisning
Idékatalog om beskæftigelsesrettet danskundervisningIdékatalog om beskæftigelsesrettet danskundervisning
Idékatalog om beskæftigelsesrettet danskundervisningMarianne Jensen
 
Licitaciones de Obra Pública del 24 de febrero al 02 de marzo del 2017
Licitaciones de Obra Pública del 24 de febrero al 02 de marzo del 2017Licitaciones de Obra Pública del 24 de febrero al 02 de marzo del 2017
Licitaciones de Obra Pública del 24 de febrero al 02 de marzo del 2017SITSAMX
 
Proyecto de diseno_geometrico_de_carrete
Proyecto de diseno_geometrico_de_carreteProyecto de diseno_geometrico_de_carrete
Proyecto de diseno_geometrico_de_carreteMirna De de Leon
 

Destacado (20)

Ecuaciones diferenciales
Ecuaciones diferencialesEcuaciones diferenciales
Ecuaciones diferenciales
 
Cadena de valor
Cadena de valorCadena de valor
Cadena de valor
 
¿Qué es una interface en java?
¿Qué es una interface en java?¿Qué es una interface en java?
¿Qué es una interface en java?
 
Capstone assignment 05 stress reduction lesson 03
Capstone assignment 05 stress reduction lesson 03Capstone assignment 05 stress reduction lesson 03
Capstone assignment 05 stress reduction lesson 03
 
Mitigando ataques espias
Mitigando ataques espiasMitigando ataques espias
Mitigando ataques espias
 
Ejemplos de algoritmos
Ejemplos de algoritmosEjemplos de algoritmos
Ejemplos de algoritmos
 
Programación básica
Programación básicaProgramación básica
Programación básica
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
Mongo db comandos básicos
Mongo db comandos básicosMongo db comandos básicos
Mongo db comandos básicos
 
3Com 3C10401A
3Com 3C10401A3Com 3C10401A
3Com 3C10401A
 
3Com 3C-PC-TP-CABLE
3Com 3C-PC-TP-CABLE3Com 3C-PC-TP-CABLE
3Com 3C-PC-TP-CABLE
 
Como hacer una_programacion_docente_lomce_2 (1)
Como hacer una_programacion_docente_lomce_2 (1)Como hacer una_programacion_docente_lomce_2 (1)
Como hacer una_programacion_docente_lomce_2 (1)
 
3.0 la informatica.guia2017
3.0 la informatica.guia20173.0 la informatica.guia2017
3.0 la informatica.guia2017
 
About dragonfish
About dragonfishAbout dragonfish
About dragonfish
 
E viveram pais para sempre... lx
E viveram pais para sempre... lxE viveram pais para sempre... lx
E viveram pais para sempre... lx
 
Roles of Eduactional Technology
Roles of Eduactional Technology Roles of Eduactional Technology
Roles of Eduactional Technology
 
Idékatalog om beskæftigelsesrettet danskundervisning
Idékatalog om beskæftigelsesrettet danskundervisningIdékatalog om beskæftigelsesrettet danskundervisning
Idékatalog om beskæftigelsesrettet danskundervisning
 
Licitaciones de Obra Pública del 24 de febrero al 02 de marzo del 2017
Licitaciones de Obra Pública del 24 de febrero al 02 de marzo del 2017Licitaciones de Obra Pública del 24 de febrero al 02 de marzo del 2017
Licitaciones de Obra Pública del 24 de febrero al 02 de marzo del 2017
 
Proyecto de diseno_geometrico_de_carrete
Proyecto de diseno_geometrico_de_carreteProyecto de diseno_geometrico_de_carrete
Proyecto de diseno_geometrico_de_carrete
 
Plan anual de aula
Plan anual de aulaPlan anual de aula
Plan anual de aula
 

Similar a Expresiones regulares

RegExp JavaScript Expresiones Regulares
RegExp JavaScript Expresiones RegularesRegExp JavaScript Expresiones Regulares
RegExp JavaScript Expresiones RegularesIsabel Gómez
 
Clase 08 Python UP 2022-2.pptx
Clase 08 Python UP 2022-2.pptxClase 08 Python UP 2022-2.pptx
Clase 08 Python UP 2022-2.pptxJoelMCh
 
Operaciones aritméticas y funciones con Strings en PHP
Operaciones aritméticas y funciones con Strings en PHPOperaciones aritméticas y funciones con Strings en PHP
Operaciones aritméticas y funciones con Strings en PHPcarlos9824
 
Expresiones Regulares definición ejemplos y codigo JS
Expresiones Regulares definición  ejemplos y codigo JSExpresiones Regulares definición  ejemplos y codigo JS
Expresiones Regulares definición ejemplos y codigo JSSaulTapiaAlmidon
 
Tema 5 arreglos y cadenas - lsia por gio
Tema 5   arreglos y cadenas - lsia por gioTema 5   arreglos y cadenas - lsia por gio
Tema 5 arreglos y cadenas - lsia por gioRobert Wolf
 
Funciones hallar, encontrar, extraer, izquierda, derecha y largo
Funciones hallar, encontrar, extraer, izquierda, derecha y largoFunciones hallar, encontrar, extraer, izquierda, derecha y largo
Funciones hallar, encontrar, extraer, izquierda, derecha y largoBalbino Rodriguez
 
Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regularesJordan-P
 
Manual php lec13.validacion_de_formularios
Manual php lec13.validacion_de_formulariosManual php lec13.validacion_de_formularios
Manual php lec13.validacion_de_formulariosPedro Ruiz
 

Similar a Expresiones regulares (20)

RegExp JavaScript Expresiones Regulares
RegExp JavaScript Expresiones RegularesRegExp JavaScript Expresiones Regulares
RegExp JavaScript Expresiones Regulares
 
Clase 10 expresiones regulares
Clase 10 expresiones regularesClase 10 expresiones regulares
Clase 10 expresiones regulares
 
Clase 08 Python UP 2022-2.pptx
Clase 08 Python UP 2022-2.pptxClase 08 Python UP 2022-2.pptx
Clase 08 Python UP 2022-2.pptx
 
Operaciones aritméticas y funciones con Strings en PHP
Operaciones aritméticas y funciones con Strings en PHPOperaciones aritméticas y funciones con Strings en PHP
Operaciones aritméticas y funciones con Strings en PHP
 
Expresiones Regulares definición ejemplos y codigo JS
Expresiones Regulares definición  ejemplos y codigo JSExpresiones Regulares definición  ejemplos y codigo JS
Expresiones Regulares definición ejemplos y codigo JS
 
Strings
StringsStrings
Strings
 
Modulo2a
Modulo2aModulo2a
Modulo2a
 
!Prograc8
!Prograc8!Prograc8
!Prograc8
 
Tema 5 arreglos y cadenas - lsia por gio
Tema 5   arreglos y cadenas - lsia por gioTema 5   arreglos y cadenas - lsia por gio
Tema 5 arreglos y cadenas - lsia por gio
 
Funciones hallar, encontrar, extraer, izquierda, derecha y largo
Funciones hallar, encontrar, extraer, izquierda, derecha y largoFunciones hallar, encontrar, extraer, izquierda, derecha y largo
Funciones hallar, encontrar, extraer, izquierda, derecha y largo
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintactico
 
Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regulares
 
Tarea Sesion 3.
Tarea Sesion 3.Tarea Sesion 3.
Tarea Sesion 3.
 
Manual php lec13.validacion_de_formularios
Manual php lec13.validacion_de_formulariosManual php lec13.validacion_de_formularios
Manual php lec13.validacion_de_formularios
 
Actividad de aprendizaje 4
Actividad de aprendizaje 4Actividad de aprendizaje 4
Actividad de aprendizaje 4
 
ADA 4
ADA 4ADA 4
ADA 4
 
Intro a ruby
Intro a rubyIntro a ruby
Intro a ruby
 
!Prograc6
!Prograc6!Prograc6
!Prograc6
 
Calculo relacional1
Calculo relacional1Calculo relacional1
Calculo relacional1
 
5-EDA-teo.ppt
5-EDA-teo.ppt5-EDA-teo.ppt
5-EDA-teo.ppt
 

Más de Erick Aguila Martínez (20)

Compilado de signos vitales.pdf
Compilado de signos vitales.pdfCompilado de signos vitales.pdf
Compilado de signos vitales.pdf
 
OPQRST.pdf
OPQRST.pdfOPQRST.pdf
OPQRST.pdf
 
SAMPLE.pdf
SAMPLE.pdfSAMPLE.pdf
SAMPLE.pdf
 
Componentes android
Componentes androidComponentes android
Componentes android
 
Test driven development
Test driven developmentTest driven development
Test driven development
 
Notificaciones android
Notificaciones androidNotificaciones android
Notificaciones android
 
Machine learning
Machine learningMachine learning
Machine learning
 
Marco de trabajo scrum
Marco de trabajo scrumMarco de trabajo scrum
Marco de trabajo scrum
 
Android mvp
Android mvpAndroid mvp
Android mvp
 
Versionamiento de software
Versionamiento de softwareVersionamiento de software
Versionamiento de software
 
Manual replicación transaccional
Manual replicación transaccionalManual replicación transaccional
Manual replicación transaccional
 
Manual replicación instantanea
Manual replicación instantaneaManual replicación instantanea
Manual replicación instantanea
 
Manual de fragmentación vertical
Manual de fragmentación vertical Manual de fragmentación vertical
Manual de fragmentación vertical
 
Manual de fragmentación mixta
Manual de fragmentación mixtaManual de fragmentación mixta
Manual de fragmentación mixta
 
Manual de fragmentación horizontal
Manual de fragmentación horizontalManual de fragmentación horizontal
Manual de fragmentación horizontal
 
Curso de Motivación
Curso de MotivaciónCurso de Motivación
Curso de Motivación
 
Express
ExpressExpress
Express
 
Tecnologias emergentes node js
Tecnologias emergentes node jsTecnologias emergentes node js
Tecnologias emergentes node js
 
Web basico
Web basicoWeb basico
Web basico
 
Html 5
Html 5Html 5
Html 5
 

Último

clases de porcinos generales de porcinos
clases de porcinos generales de porcinosclases de porcinos generales de porcinos
clases de porcinos generales de porcinosDayanaCarolinaAP
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfmatepura
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfMikkaelNicolae
 
Base de Datos en Microsoft SQL Server 2024
Base de Datos en Microsoft SQL Server 2024Base de Datos en Microsoft SQL Server 2024
Base de Datos en Microsoft SQL Server 2024CESARHERNANPATRICIOP2
 
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptxCARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptxvalenciaespinozadavi1
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptMarianoSanchez70
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfedsonzav8
 
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptxNTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptxBRAYANJOSEPTSANJINEZ
 
Ingeniería clínica 1 Ingeniería biomedica
Ingeniería clínica 1 Ingeniería biomedicaIngeniería clínica 1 Ingeniería biomedica
Ingeniería clínica 1 Ingeniería biomedicaANACENIMENDEZ1
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrialGibranDiaz7
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALKATHIAMILAGRITOSSANC
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxMarcelaArancibiaRojo
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaXimenaFallaLecca1
 
TEXTO UNICO DE LA LEY-DE-CONTRATACIONES-ESTADO.pdf
TEXTO UNICO DE LA LEY-DE-CONTRATACIONES-ESTADO.pdfTEXTO UNICO DE LA LEY-DE-CONTRATACIONES-ESTADO.pdf
TEXTO UNICO DE LA LEY-DE-CONTRATACIONES-ESTADO.pdfXimenaFallaLecca1
 
CONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptx
CONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptxCONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptx
CONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptxBrayanJavierCalle2
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.pptoscarvielma45
 
Quimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfQuimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfs7yl3dr4g0n01
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASfranzEmersonMAMANIOC
 
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdfCristhianZetaNima
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptCRISTOFERSERGIOCANAL
 

Último (20)

clases de porcinos generales de porcinos
clases de porcinos generales de porcinosclases de porcinos generales de porcinos
clases de porcinos generales de porcinos
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
Base de Datos en Microsoft SQL Server 2024
Base de Datos en Microsoft SQL Server 2024Base de Datos en Microsoft SQL Server 2024
Base de Datos en Microsoft SQL Server 2024
 
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptxCARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
CARGAS VIVAS Y CARGAS MUERTASEXPOCI.pptx
 
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.pptARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
ARBOL DE CAUSAS ANA INVESTIGACION DE ACC.ppt
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptxNTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
 
Ingeniería clínica 1 Ingeniería biomedica
Ingeniería clínica 1 Ingeniería biomedicaIngeniería clínica 1 Ingeniería biomedica
Ingeniería clínica 1 Ingeniería biomedica
 
desarrollodeproyectoss inge. industrial
desarrollodeproyectoss  inge. industrialdesarrollodeproyectoss  inge. industrial
desarrollodeproyectoss inge. industrial
 
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONALCHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
CHARLA DE INDUCCIÓN SEGURIDAD Y SALUD OCUPACIONAL
 
hitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docxhitos del desarrollo psicomotor en niños.docx
hitos del desarrollo psicomotor en niños.docx
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
 
TEXTO UNICO DE LA LEY-DE-CONTRATACIONES-ESTADO.pdf
TEXTO UNICO DE LA LEY-DE-CONTRATACIONES-ESTADO.pdfTEXTO UNICO DE LA LEY-DE-CONTRATACIONES-ESTADO.pdf
TEXTO UNICO DE LA LEY-DE-CONTRATACIONES-ESTADO.pdf
 
CONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptx
CONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptxCONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptx
CONCEPTOS EN HIDROGEOLOGIA-diapositivas varias.pptx
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
 
Quimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdfQuimica Raymond Chang 12va Edicion___pdf
Quimica Raymond Chang 12va Edicion___pdf
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
 
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
04. Sistema de fuerzas equivalentes II - UCV 2024 II.pdf
 
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.pptaCARGA y FUERZA UNI 19 marzo 2024-22.ppt
aCARGA y FUERZA UNI 19 marzo 2024-22.ppt
 

Expresiones regulares

  • 2. Expresiones regulares ITI. Erick Aguila Martínez Y, ¿Qué es una expresión regular? Las expresiones regulares son patrones utilizados para encontrar una determinada combinación de caracteres dentro de una cadena de texto.
  • 3. ¿Para qué sirven? ITI. Erick Aguila Martínez Una expresión regular, nos servirá para buscar patrones en una cadena de texto, por ejemplo encontrar cuantas veces se repite una palabra en un texto, para comprobar que una cadena de texto tiene una determinada estructura, para saber el nombre de algún archivo y conocer su determinada extensión, o validar que un email esta bien escrito...
  • 4. Sintaxis ITI. Erick Aguila Martínez Una breve lista de los más utilizados: • ^ Indica el principio de una cadena • $ Indica el final de una cadena • () Un agrupamiento de parte de una expresión • [] Un conjunto de caracteres de la expresión • {} Indica un número o intervalo de longitud de la expresión • . Cualquier carácter salvo el salto de línea • ? 0-1 ocurrencias de la expresión • + 1-n ocurrencias de la expresión • * 0-n ocurrencias de la expresión • Para escribir un carácter especial como los anteriores y que sea tratado como un literal • | Para indicar una disyunción lógica (para elegir entre dos valores: a|b se tiene que cumplir al menos uno de los dos)
  • 5. Ejemplos ITI. Erick Aguila Martínez La mejor manera de comprender algo es ponerlo en practica y para esto daremos algunos ejemplos de los cuales entenderemos el uso de la sintaxis anteriormente mencionada. //Los que están entre la h y la m String patron = "[a-m&&h-z]"; Pattern p = Pattern.compile(patron); String texto = "h"; //Busca patrón en el texto Matcher matcher = p.matcher(texto); if(matcher.matches()){ System.out.println("Coincide"); }else{ System.out.println("No coincide"); } En este caso el patrón coincide ya que es un carácter que está entre la h y la m, pero si en cambiamos el texto por hh, no coincidirá porque el patrón indique solo busque una letra, no varias.
  • 6. Ejemplos ITI. Erick Aguila Martínez String patron = "[s]$"; //El ^ es que solo encuentre el primero de la cadena, $es solo el ultimo Pattern p = Pattern.compile(patron); String texto = "Estamos aprendiendo a usar expresiones regulares"; Matcher matcher = p.matcher(texto); while(matcher.find()){ System.out.printf("Encontrado %s en %d y final en %dn", matcher.group(),//patrón matcher.start(),//donde empieza la palabra encontrada matcher.end()); //donde acaba la palabra encontrada } En este caso buscamos todas las palabras que acaben en s, y el resultado es el siguiente: Encontrado s en 47 y final en 48 Te está indicando que la posición en la que empieza el patrón s es en el carácter 47, y acaba en el carácter 48. Te indica que se ha encontrado, y además en que posición.
  • 7. Ejemplos ITI. Erick Aguila Martínez String patron = "a[mp]";//todo lo que tenga una a seguida de un carácter entre m y p Pattern p = Pattern.compile(patron); String texto = "Estamos aprendiendo a usar expresiones regulares"; Matcher matcher = p.matcher(texto); //String result = matcher.replaceAll("x");//Esto reemplaza todo //System.out.println(result); // String result = matcher.replaceFirst("x");//Esto reemplaza solo la primera coincidencia System.out.println(result); Para reemplazar, utilizamos el método ReplaceFirst(), que reemplaza solo la primera coincidencia, o ReplaceAll(), que reemplaza todo lo encontrado: El resultado sería el siguiente: Estxos aprendiendo a usar expresiones regulares
  • 8. Ejemplos ITI. Erick Aguila Martínez final String patron = "[0-9]+";//Un numero o mas final String texto = "uno232dos5tres423cuatro"; Pattern p1 = Pattern.compile(patron); String[] items = p1.split(texto);//Dividimos el texto por las partes encontradas for (String s : items) { System.out.println(s); } El resultado sería: uno dos tres cuatro Un ejemplo de utilización sería por ejemplo limpiar una cadena, quitando todos los números que se encuentre en una cadena:
  • 9. Fuente ITI. Erick Aguila Martínez Para más información consultar http://www.tutorial-es.com/java-expresiones-regulares/ https://developer.mozilla.org/es/docs/Web/JavaScript/Guide/Regular_Expressions https://www.adictosaltrabajo.com/tutoriales/regexsam/ http://programacion.net/articulo/expresiones_regulares_en_java_127