‫Bienvenido de nuevo y este video, vamos a hablar sobre expresiones regulares, y es un lenguaje
‫o un patrón que el motor de expresiones regulares intenta hacer coincidir en el texto de entrada para que
‫podamos crear texto de entrada y luego podemos usar expresiones regulares para verificar patrones específicos.
‫Y eso es superpoderoso.
‫Y no solo se usa en C Sharp, se usa prácticamente en todos los lenguajes de programación.
‫Y es útil para averiguar, por ejemplo, si un usuario ingresó una dirección de correo electrónico correcta o si
‫un usuario ingresó un enlace correcto o cosas así en general.
‫Por lo tanto, puede usar expresiones regulares para descubrir esas cosas y buscar patrones específicos y hacer
‫algo.
‫Si están ahí o si no están ahí, entonces no hagas nada, por ejemplo.
‫Y bueno, estoy en este sitio web donde puede consultar el lenguaje de expresiones regulares con una
‫referencia rápida.
‫Y hay tantos personajes diferentes que se escapan para encontrar cosas o para crear patrones.
‫Y hay mucho aquí.
‫Y voy a usar los más importantes de esos.
‫No voy a entrar en todos y cada uno de ellos, pero verá muchos ejemplos diferentes que se
‫asegurarán de que comprenda las expresiones regulares.
‫Y luego será muy fácil volver a un lado y usar los otros si alguna vez los necesita.
‫Está bien.
‫Así que volvamos a Visual Studio, y he creado un pequeño texto de muestra, así que creemos un
‫nuevo proyecto de expresión regular.
‫Tengo un año.
‫Simplemente llámelo de la forma que desee y creemos un nuevo archivo aquí también.
‫Nuevo artículo.
‫Y esta vez, no vamos a crear una clase.
‫Simplemente será un archivo de texto muy básico.
‫Entonces, aquí, archivo de texto y lo llamaré texto de punto simple.
‫Ahora, abramos ese archivo de texto más simple.
‫Y simplemente copié y pegué un código allí o un texto allí.
‫Y como puede ver, números, números de teléfono, números de teléfono en alemán, etc., el
‫alfabeto, algún texto lalalala, etc.
‫Entonces, usaremos expresiones regulares para marcar esos patrones específicos que estamos buscando.
‫Y eso tendrá mucho más sentido una vez que entremos en práctica.
‫Entonces, presionemos el control F o el comando F para llegar a la herramienta final aquí.
‫Y una vez que esté aquí, presione esto, use expresiones regulares o alti.
‫Entonces eso usará expresiones regulares.
‫Ahora, ahora, ahora, nuestra consola de búsqueda aplicará expresiones regulares.
‫Entonces, ¿qué son las expresiones regulares?
‫Viste algunos de ellos.
‫Comencemos con uno muy simple.
‫Así que voy a seguir adelante y comenzar con pestañas.
‫Así que vayamos a la pestaña Backslap.
‫Y como puede ver ahora, las pestañas están marcadas.
‫Entonces, en mi caso, lo voy a agrandar un poco para que lo veas mejor.
‫A continuación se ofrecen algunos consejos.
‫Déjame crear algunas pestañas más.
‫Como puede ver ahora, todas las pestañas están marcadas aquí.
‫Todos están resaltados.
‫Ahora busquemos cada nueva línea por barra invertida.
‫Y entonces puede ver que aquí es donde comienza la nueva línea y aquí también.
‫Así que aquí es donde presiono enter, dejo que presionen en algún lugar.
‫Ingresar.
‫Como puede ver aquí, cada vez que presiono, entro y rompo la línea, tengo esta barra invertida.
‫Y así es como puedo averiguar si hubo una nueva línea o no.
‫Entonces, ¿de qué obtengo todas esas barras invertidas y demás?
‫Bueno, puedo encontrarlos aquí bajo expresión regular, idioma, referencia rápida.
‫Pero también he creado un pequeño fragmento de archivo de texto.
‫Déjame crear un pequeño archivo y lo pegaré allí.
‫Puede descargarlos de los recursos de esta conferencia y los llamaré fragmentos de ese texto.
‫Así que aquí tenemos caracteres de escape, que son, por ejemplo, Tab, para que podamos averiguar si hay tabulaciones en
‫mi cadena, que está en mi archivo de texto de muestra, el archivo completo.
‫Entonces, aquí estoy verificando todo el archivo y estoy verificando cada nueva línea o
‫cada pestaña en todo mi archivo.
‫Bastante.
‫OK entonces.
‫Tenemos las clases de caracteres, por ejemplo, un punto, un punto simple es un comodín, como cualquier
‫carácter individual excepto por la barra invertida.
‫Y, a excepción de New Line, veamos si eso es cierto.
‫Entonces tenemos nuevas líneas.
‫Veámoslo de nuevo usando la tecla N aquí.
‫Como puede ver, obtenemos todas las líneas nuevas.
‫Ahora, usemos el punto y el punto, como puede ver.
‫Tanto como cualquier carácter individual, eso es lo que termina o lo que hace es un comodín.
‫Entonces, si quieres marcar todo, bueno, ese es el camino a seguir.
‫Entonces puede ver que revisa todo lo que dice, excepto la nueva línea.
‫Pero como parece, también se marcan nuevas líneas.
‫Entonces, cada vez que creo una nueva línea, todavía está marcada con este pensamiento.
‫Está bien.
‫Así que veamos el siguiente.
‫Voy a repasar algunos de ellos y luego los combinaremos para usar algunas cosas interesantes.
‫Está bien.
‫Tanto como cualquier dígito digital o decimal.
‫Sigamos adelante y veamos eso.
‫Barra invertida D de cuatro dígitos.
‫Y como puede ver, mi número aquí, uno, dos, tres, cuatro, cinco, seis, siete, ocho, nueve cero, están todos
‫marcados.
‫Y aquí están todos mis números marcados.
‫Y los valores intermedios, por ejemplo, el signo más, la etiqueta hash, etc., no están marcados.
‫Bien, entonces se encontrará cualquier número o cualquier número coincidirá con el patrón de esta expresión regular.
‫La barra invertida D, que significa barra invertida decimal D, hará lo contrario.
‫Por lo tanto, tomará todo lo demás menos números, como puede ver aquí nuevamente.
‫Si desea tener el espacio amplio, puede usar la barra invertida, ya que obtiene cualquier espacio en blanco que tenga en
‫su archivo.
‫Entonces, si digamos que quiero deshacerme de cualquier espacio en blanco en su archivo, puede usar este patrón y deshacerse
‫de todo lo que coincida con ese patrón.
‫Capitalizar en el otro lado es todo lo que no es un espacio en blanco.
‫Como puede ver, el Capitolio siempre es todo lo contrario.
‫Entonces D es todo números.
‫La D mayúscula es excepto números.
‫Entonces todo excepto los números.
‫Muy bien, entonces echemos un vistazo a w w me dará cualquier carácter de lata de palabra y los números están incluidos.
‫Así que aquí me da todos los números y todos los caracteres como ABCDE y así sucesivamente.
‫Así que aquí está marcado todo el alfabeto, así como todos mis dígitos aquí, como también pueden ver, los
‫puntos no están marcados y las barras.
‫Y esos personajes de Medda, esos personajes específicos, tampoco están marcados y no agregan ninguno.
‫Está bien.
‫Si quieres tener todo lo demás, usa W mayúscula ahora, si quieres tener, por ejemplo,
‫la ley, busquemos LA L. UNA. Como puede ver, puedo buscarlo con minúsculas o mayúsculas en ambos casos.
‫Mi la la la la la.
‫Envía un mensaje de texto aquí si quieres cantar.
‫La la la la la la la la y así sucesivamente, ese es el que está marcado aquí.
‫Pero como puede ver, todos coinciden con ese patrón, aunque no estoy usando la letra mayúscula literal o
‫no.
‫Está bien.
‫Y si quisiera tener solo los que están vinculados a un lado específico,
‫puedo seguir adelante y usar back o B l a, y ahora solo se mostrarán los que tienen un límite hacia la izquierda.
‫Entonces, lo que significa que no hay nada antes de de la o hay un espacio en blanco antes de LA, por lo que solo
‫se marcarán esos.
‫Como puede ver, esta L. UNA. tampoco está marcado este.
‫Eso es porque la palabra límite no está en el lado izquierdo.
‫Así que volvamos a Desinhibiciones rápidamente y veamos lo que tenemos aquí.
‫Entonces tenemos grupos de personajes que debemos mirar.
‫Luego tenemos el signo de negación.
‫Por lo tanto, los anclajes de los meses de coincidencia deben comenzar al comienzo de una cadena o línea.
‫Si usa eso, entonces el signo W, debe ocurrir una coincidencia al final de la cadena o antes de a.
‫Siguiente línea al final de la línea de la cadena, bastante bien entonces, sí.
‫Echemos un vistazo a esos.
‫Volvamos a nuestro archivo de muestra.
‫Por ejemplo.
‫Circumflex Alé, y como puede ver aquí, este está marcado, por lo que está al comienzo de una cadena.
‫Vamos por una A.
‫Como puede ver aquí, está al principio de la cadena o, si desea tener una M, también está
‫al principio de la cadena.
‫Así que ahí estás.
‫Lo que quieras tener el que está al final de la cadena.
‫Bueno, la cosa es que tenemos un texto completo de toda esta muestra.
‫El archivo de texto es prácticamente una cadena.
‫Entonces, si quiero tenerlo al final.
‫Como puede ver, hay un carácter al final de la cadena y ese es este más aquí.
‫Entonces, si quiero tener el plus, por cierto, o el DOT o cualquiera de esos personajes, necesito escapar de
‫ellos.
‫Entonces, si los busco, necesito escapar de ellos.
‫¿Y cómo puedo escapar de ellos?
‫Bueno, puede escapar de ellos usando la barra invertida.
‫Entonces, Backslash Plus me dará el plus aquí, como puede ver, el plus literal en el otro lado.
‫Entonces, si solo ingreso más como puede ver, este más no se encontrará y eso se debe a
‫que es un metacarácter y debemos escapar de ellos si usamos expresiones regulares para encontrarlos.
‫Entonces, Backslash Plus me dará el plus.
‫Como puede ver, este más aquí está marcado al igual que el más allí.
‫Pero ahora, si solo quiero tener el que está al final de una cadena y, como dije, todo
‫este texto es una cadena, simplemente uso el signo de dólar y puedo ver que este signo más está marcado.
‫Sin embargo, el signo más aquí no está marcado ni resaltado.
‫Ahora echemos un vistazo a los rangos reales de rango muy rápido.
‫Entonces, como puede ver, tenemos este grupo de caracteres que coincide como un solo carácter o como un solo carácter en un grupo de
‫caracteres.
‫De forma predeterminada, la coincidencia distingue entre mayúsculas y minúsculas.
‫Entonces, grupos de personajes, echémosle un vistazo.
‫Veamos nuestro texto de muestra.
‫Y en esos corchetes, puedo seguir adelante y hacer algo como de la A a la Z.
‫Así que ahora se resaltarán todos los caracteres entre la A y la Z.
‫Como puede ver, todos los personajes están resaltados.
‫Si solo quiero tener de A a F, como puede ver, solo H. F. están resaltados y, como puede ver, no les
‫importa.
‫Toma tanto letras mayúsculas como minúsculas.
‫Y entonces puede ver que nuestro estudio visual no parece preocuparse por esto por defecto.
‫Los partidos distinguen entre mayúsculas y minúsculas.
‫Entonces, en nuestro caso, el grupo de caracteres distingue entre mayúsculas y minúsculas, como puede ver.
‫Entonces se necesita cualquiera.
‫Está bien.
‫Pero si quieres estar seguro y en otros casos necesitas usar de la A a la Z, por ejemplo, así, y
‫de la A a la Z así.
‫Entonces tendrían mayúsculas más bajas y otras letras mayúsculas prácticamente.
‫Está bien.
‫Entonces ese es un grupo.
‫Ese es un ejemplo de un grupo en el que podemos usar cualquier letra aquí.
‫Entonces, como puede ver, cada cosa o cada letra que ingresamos allí también está marcada.
‫No o resaltado también.
‫Ahora, dentro de este grupo, todo lo que está en el grupo se resaltará.
‫Ahora podemos crear otros cambios también con dígitos, así que digamos que quiero tener todos los números numerados entre
‫uno y cinco que somos ahora, obtengo todos los números entre uno y cinco cero no incluidos.
‫Entonces uno, dos, tres, cuatro, cinco.
‫¿Qué pasa si quiero tener lo opuesto? Bueno, entonces puedo usar el circunflejo de nuevo, así que el circunflejo del
‫uno al cinco me dará todos los números excepto uno, dos, cinco.
‫Entonces, si quiero tener todos los números excepto el siete, digamos, ¿qué ingresaría?
‫Está bien.
‫Espero que lo hayas descubierto.
‫Es sólo siete u ocho circunflejos.
‫¿Cómo averiguo ahora un patrón específico?
‫Porque hasta ahora hemos utilizado expresiones regulares muy genéricas.
‫Solo usamos los caracteres muy simples y así sucesivamente.
‫Entonces, ¿qué pasa si quiero tener esta estructura específica, digamos tres dígitos, otros tres dígitos y luego
‫cuatro dígitos, y están separados por un guión?
‫Entonces, ¿cómo lo haces?
‫Bueno, digo que es un dígito, luego es otro dígito y es otro dígito.
‫Entonces, como pueden ver, eso encaja con todos esos patrones que tenemos, todos esos números que tenemos
‫aquí.
‫Eso es porque todos son al menos tres números.
‫Entonces, si agrego otro aquí, como puede ver, la primera línea está resaltada y luego aquí.
‫Y nuestra tercera línea, solo los que tienen al menos cuatro números conectados entre sí como resaltados.
‫Entonces, ¿qué pasa si quiero resaltar esta línea tres y también la línea cuatro?
‫Debido a que tienen el mismo patrón, puedo hacer lo siguiente o lo siguiente, menos la
‫barra invertida D, la experiencia profunda y la barra invertida.
‫Así que ahora tengo esas dos líneas o esos dos números resaltados.
‫Esta es una forma en la que puedo averiguar todos los números de teléfono con esta estructura y hay formas más fáciles de
‫hacerlo.
‫No tengo que ingresar tantos D si no quiero.
‫Hay una forma más sencilla en la que puedo usar el siguiente enfoque, de modo que solo puedo decir, OK, entre corchetes
‫digo cómo o cómo digo cuántos de los caracteres o patrones de escape anteriores quiero.
‫Entonces, en este caso, digo, está bien, quiero tener tres D, lo que significa tres dígitos.
‫Lo mismo ocurre con nuestra segunda entrada o segunda parte de información.
‫Y para el último, como puede ver, tres no son suficientes.
‫Necesitamos cuatro.
‫Entonces ahora se ajusta a esos dos patrones.
‫Entonces, ¿qué pasa si no solo quiero tener las desventajas, sino también los puntos o también los valores hash?
‫Bueno, puedo usar eso en ambos casos, pero luego, como puede ver, todo está incluido.
‫Entonces pueden ver aquí con tres números, luego tenemos algo más y luego tenemos muchos más números.
‫Así que tenemos esta pieza aquí.
‫Es por eso que la línea siete también está marcada.
‫Lo mismo para ocho.
‫Como puede ver, comienza después del cuarenta y nueve, lo que significa que también tenemos este patrón aquí.
‫Pero no quiero tener esos patrones.
‫Quiero ser más preciso.
‫Quiero tener, por ejemplo, la etiqueta hash allí.
‫Quiero tener el menos y eso, pero solo quiero tener esta estructura específica.
‫Entonces, ¿cómo consigo eso?
‫Bueno, puedo usar una búsqueda de grupo literal, lo que significa que en lugar del DOT, voy a
‫usar corchetes nuevamente y serán mi búsqueda de grupo literal.
‫Entonces aquí digo que es un punto.
‫¿Qué dijo hash o es un menos?
‫Entonces, como puede ver ahora, esos tres personajes están bien, pero nada más.
‫Ahora, si quiero usarlo para el primer carácter aquí también, entonces tengo que marcar aquí.
‫Entonces tomó el signo menos para DOT y el hash, pero quiero tener los tres y nada más.
‫Entonces, ¿qué pasa si entro aquí, por ejemplo?
‫Bueno, ahora ya no es el caso, pero si es solo un punto, entonces la A está bien.
‫Pero si entro a mi grupo que tenía allí, mi pequeño grupo específico busca.
‫Así que esta es una búsqueda de grupo literal aquí.
‫Ahora ya no está incluido, por lo que tiene que ser uno de esos tres personajes.
‫Está bien.
‫Si te apetece un desafío y estás preparado para un desafío real, crea la estructura para los
‫tres números.
‫Así que cree un patrón para los tres números diferentes, porque estas son tres formas diferentes
‫de crear un número de teléfono móvil en Alemania, y esa es la estructura general.
‫Entonces esto es si llamas desde Alemania, esto es si llamas desde fuera de Alemania y ese también.
‫Entonces, ya sea A más o doble cero, eso es generalmente si llama a alguien fuera de su país,
‫debe tener el signo más más el código del país.
‫Y es lo mismo con cero cero, que representa este plus.
‫Está bien.
‫Entonces, si lo desea, puede crear la estructura para este.
‫Es bastante dificil.
‫Y todavía necesito mostrarte una cosa antes de que puedas hacer eso.
‫Y tal vez sea un poco más que una sola cosa.
‫Entonces, en primer lugar, sigamos con la tubería.
‫Así que digamos que quiero tener más cuarenta 49 o quiero tener algo como cero cero cuarenta y nueve.
‫Ahora que por sí solo no funcionará.
‫¿Porqué es eso?
‫Bueno, si miramos los fragmentos, podemos encontrar cuantificadores y todavía no hemos usado cuantificadores y eso es algo que
‫tendremos que hacer.
‫Ahora lo mismo para los constructos de agrupación y los constructos de alternancia.
‫Entonces estos son los que vamos a usar ahora.
‫Bien, tenemos que comprobarlos antes de poder seguir adelante y crear una estructura completa para esos números.
‫Así que comencemos usando alternancia, construcciones y cuantificadores.
‫Entonces, ¿el signo más dice que coincide con el elemento anterior una o más veces?
‫Bueno, no quiero hacer eso.
‫Solo quiero tener una ventaja literal.
‫Y como saben, un plus es una cuestión de carácter y debe ser un.
‫Entonces, lo que tengo que hacer antes del signo más es una barra invertida.
‫Y ahora pueden ver que estoy usando la tubería aquí.
‫Entonces digo que es más cuarenta y nueve u ocho cero cero cuarenta y nueve.
‫Y como puede ver, ambas estructuras o ambos patrones están marcados aquí o mis dos números
‫aquí están resaltados.
‫Entonces eso es lo que hace esto.
‫Es una o la otra.
‫Entonces, uno de esos tiene que ser cierto en todo el número que estamos viendo.
‫Entonces es divertido.
‫Y eso no es solo para los números, también para los personajes.
‫Entonces, por ejemplo, si quiero que el Sr. y la Sra.
‫Entonces, si quiero etiquetarlos, uso m r pipe ams, lo que significa señor o señorita.
‫Tengo que ser sincero.
‫Y es el caso aquí en nuestro caso.
‫Así que ese es el uno o el otro, como puede ver aquí, nuestra construcción de alternancia, luego la construcción
‫de agrupación es algo que debemos mirar para poder verlos.
‫Creo que es mejor si miramos los enlaces aquí.
‫Así que tenemos ciertos enlaces aquí, enlaces HGP y HTP y con W W, W o sin ellos.
‫Entonces tenemos cuatro enlaces diferentes aquí.
‫Y si quiero usar un grupo, digamos que quiero usar este grupo w w w pero, como puede ver, no es el
‫caso de todos los enlaces.
‫Entonces, para encontrar los enlaces, primero debemos ir a HTP.
‫S, entonces tenemos esta estructura.
‫Hasta ahora todo va bien.
‫Y ahora, si quiero que esos dos sigan activos, necesito revisar este grupo w w w porque aquí es el
‫caso y aquí no.
‫Entonces, ¿cómo hacer eso?
‫Bueno, necesito usar un grupo, así que voy a agrupar w w w y, como pueden ver hasta ahora, solo
‫este enlace aquí, el primero está resaltado, pero luego, si ingreso este signo de interrogación, entonces está bien.
‫Entonces estoy usando el grupo w w pero lo estoy combinando con.
‫El signo de interrogación y ¿qué significa este signo de interrogación?
‫Bueno, es un cuantificador y coincide con el elemento anterior cero o una vez.
‫Entonces, los cuantificadores son la estrella, que coincide con el elemento anterior, cero o más veces que el signo más, que
‫coincide con el elemento anterior una o más veces.
‫Y luego tenemos el signo de interrogación, que coincide con el elemento anterior, cero o una vez.
‫También puede decir cuántas veces quiere que sea exactamente.
‫Por lo tanto, coincide exactamente con los tiempos de finalización del elemento anterior y también para un rango.
‫Así que al menos el fin de los tiempos, pero más o no más de M tiempo.
‫Entonces esos son los diferentes cuantificadores que puedes usar.
‫Así que ahora he visto un ejemplo de agrupación, agrupar la W y luego un ejemplo de cuantificadores usando el
‫signo de interrogación.
‫Como puede ver, ambas cosas siguen activas.
‫Entonces, este w w w y el que no lo tiene todavía están activos y aquí realmente w w w dot.
‫Entonces este punto también está incluido.
‫Y luego, después del signo de interrogación, puedo seguir adelante y decir tutoriales para que ambas cosas estén activas.
‫Bien, volvamos atrás, todavía tenemos este pequeño desafío para hacer que todos esos números estén
‫activos.
‫Y a estas alturas, debería poder hacerlo por lo que ha visto.
‫Es bastante difícil, les digo, puede llevar bastante tiempo, tal vez incluso media hora más o menos,
‫aunque es un ejemplo muy básico.
‫Puede llevar un tiempo averiguarlo en función de lo que ha aprendido o de los fragmentos que ha
‫visto aquí.
‫Por lo tanto, tal vez sea mejor si descarga el archivo de fragmentos y observa las diferentes clases de
‫caracteres, escenarios de personajes, anclas, etc., para probarlo.
‫Como dije, uno difícil.
‫Si no se siente como un desafío difícil, espere el desafío más fácil, que será encontrar todos los
‫enlaces de sitios web o dos.
‫Bueno, marque todos los enlaces a sitios web o resalte todos.
‫Está bien.
‫Por lo tanto, ahora debe saber todo lo que necesita para crear patrones para encontrar números de teléfonos móviles
‫alemanes.
‫Y hay una cosa a considerar.
‫Entonces siempre comienzan con un cero o más cuarenta y nueve o un cero cero cuarenta y nueve, luego siguen un uno.
‫Entonces ese es siempre el caso.
‫Como pueden ver, uno aquí, otro allá y uno aquí, los siguientes números, ya sea un seis o un
‫siete.
‫Entonces no se permiten otros números aquí.
‫Luego, el siguiente dígito, que es en este caso, el cuarto dígito puede ser cualquier número, luego tiene
‫una barra y los siguientes son solo ocho números.
‫Y esos ocho números pueden ser cualquier número, por lo que puede ser cualquiera de esos 10 dígitos diferentes.
‫Bien, esa es generalmente la estructura.
‫Intenta construir eso.
‫Si te apetece un verdadero desafío, no es fácil.
‫Puede llevar bastante tiempo configurarlo, pero ya ha visto lo que necesita para hacerlo y.
‫Bueno, por favor, pruébalo y sigue adelante y echa un vistazo a los fragmentos para hacerlo.
‫Así que siempre regrese a los fragmentos para averiguarlo.
‫Y puede resultar complicado.
‫Y si siente que no está progresando y no puede hacer que funcione, por lo que
‫no puede resaltar los tres números, entonces está bien, porque lo explicaré justo después.
‫Muy bien, voy a explicar ahora, si quieres probarlo tú mismo, solo pausa el video.
‫Bien, primero que nada, tenemos un cero, un más cuarenta y nueve o un cero cero 49.
‫Así que comencemos con el plus 49 y usaré un grupo para eso.
‫Necesito la barra invertida más cuarenta y nueve para usar el signo más literal como puede ver aquí, entonces
‫la alternativa es cero cero cuatro nueve.
‫Entonces es más 49 o cero cero cuatro nueve.
‫Y luego la otra alternativa es solo un cero.
‫Como puede ver, aquí es solo este cero.
‫Pero como puede ver, todos los demás ahora también están activos.
‫Todos los demás ceros también están activos.
‫Y voy a agregar un signo de interrogación aquí, porque digo que puede haber un cero o se pueden hacer.
‫Entonces, en esos casos, no hay ninguno.
‫En esos dos casos, solo en ese caso tenemos un cero.
‫Así que ahora veamos qué significa este signo de interrogación.
‫Significa coincide con el elemento anterior, cero o una vez.
‫Bien, cero en esos dos casos y uno en la línea ocho.
‫OK, eso no es todo.
‫Ese es solo el comienzo del número.
‫Correcto, sigue uno.
‫Así que ahora tenemos cero uno y luego seis o siete.
‫Entonces creo un grupo nuevamente, solo voy a decir seis, cinco, siete dentro de mis paréntesis.
‫Hasta ahora todo está bien, entonces puede ser cualquier número.
‫Entonces ahora puedo usar la barra invertida D, luego tenemos una barra y luego tenemos otro número.
‫Y no es solo uno, tiene ocho dígitos.
‫Entonces podemos simplemente decir, OK, serán ocho dígitos y eso es lo que somos.
‫Esa es la estructura.
‫Lo voy a agregar justo debajo de aquí.
‫Así que ese es nuestro patrón para obtener números de teléfono alemanes.
‫Bueno, al menos los que vemos aquí y en general, deberías encontrar todos los números de teléfono alemanes.
‫Ahora, por supuesto, puede intentar lo mismo con el número de su país.
‫Así que sea lo que sea, desde donde sea que viva, verifique los números de teléfono o los números de teléfono móvil y vea
‫cómo es la estructura de esos números de teléfono móvil e intente construir el patrón para eso.
‫Incluso puedes compartir eso si quieres.
‫Sería interesante verlo todo.
‫Todos los demás en el curso y yo, también yo, sería muy interesante ver de dónde eres y cómo
‫es la estructura de los números de teléfono o teléfonos móviles de tu país.
‫Está bien, genial.
‫Así que espero que logres hacer eso.
‫Y si no lo hizo, espero que pueda seguir la estructura que acabo de explicar.
‫Ahora, sigamos adelante y.
‫Bueno, en realidad, echemos un vistazo.
‫El Sr. y señorita ejemplo, de nuevo, porque aquí tenemos al Sr. Pan, Utah, donde tenemos al Sr. Mueller sin cita.
‫Entonces, ¿cómo puedo comprobar si el punto está ahí o no?
‫Bueno, a estas alturas, deberías saber que puedes usar un signo de interrogación para eso.
‫Así que comencemos con el Sr. como puede ver, las tres o cuatro líneas están marcadas, al menos el señor.
‫Y luego, si uso un punto, puede ver que todos ellos también están activos.
‫Pero eso es porque eso significa comodín o significa cualquier cosa.
‫Así que aquí también podría haber un espacio vacío.
‫Entonces, si desea asegurarse de que sea un punto literal, debe usar la barra invertida.
‫Ahora, el siguiente es un espacio vacío y luego tenemos el nombre.
‫Entonces podría ser de la A a la Z.
‫Así que cualquier cosa A ver así.
‫Entonces, ¿cómo consigo que el Sr. Mueller y el Sr. ¿Robertson también?
‫Bueno, necesito usar el punto nuevamente, pero esta vez con un signo de interrogación, porque lo que estoy diciendo ahora
‫es que se puede hacer un punto org y luego tenemos un espacio vacío.
‫Entonces aquí uso el espacio vacío literal para obtener eso.
‫Pero también puede usar la barra invertida porque la barra invertida s si verifíquelo nuevamente.
‫Tanto como cualquier carácter de espacio en blanco y eso es lo que queríamos.
‫Así que ahora todos esos nombres son correctos.
‫Y si desea tener una cantidad específica de caracteres a continuación, por lo que los nombres deben tener
‫al menos cuatro caracteres, puede usar este cuantificador aquí.
‫Entonces estamos usando el cuantificador dentro de ser forzado.
‫Entonces decimos que son al menos cuatro caracteres o cuatro letras.
‫Si no solo quisiera tener caracteres como de la A a la Z, sino también números, por ejemplo, entonces podría usar la barra
‫invertida W, por lo que la barra invertida W simplemente significa que es un carácter de palabra, como puede ver aquí.
‫Entonces H es A a Z 029 y subrayado.
‫Por lo que es útil para, digamos, nombres de jugadores o nombres de usuarios.
‫Así que cosas así.
‫Y si quiero tener varios caracteres, puedo usar el signo más, por lo que el cuantificador más coincide con
‫el elemento anterior una o más veces.
‫Así que echémosle un vistazo.
‫Agreguemos el más.
‫Y como puede ver ahora, el Sr. Punj, Sr. Miller, el Sr. Robertson y el Sr. G, todos están
‫completamente resaltados porque, bueno, hemos dicho que queremos tener uno o más personajes.
‫Y si quisieras tener cero o más veces, entonces podríamos usar una estrella.
‫Como puede ver, la estrella también funciona aquí porque tenemos más veces o más personajes.
‫Muy bien, ahora es el momento de un pequeño desafío, encontrar un sitio web.
‫Así que ya comenzamos, pero ahora, por favor, busque todos los enlaces de sitios web que tengan esta estructura.
‫Y no tiene por qué ser tutoriales.
‫No debería ser un nombre literal, pero debería ser generalmente la estructura y
‫la estructura es, como puede ver, DBS o HGP, Kolon, SGB.
‫Luego w w w punto o no, luego el nombre del dominio y el dominio y el dominio de nivel superior, que es EU en este
‫caso, por lo que también está separado por un punto.
‫Está bien.
‫Así que, por favor, inténtalo.
‫Muy bien, espero que lo hayas probado, así que comenzamos con GTP sy la S es opcional, así que solo respondemos al signo de
‫interrogación.
‫Entonces tiene que ser una pregunta de sí o no.
‫Eso es lo que hace este signo de interrogación.
‫Luego tenemos Kolon, barra diagonal, barra diagonal y luego tenemos un grupo.
‫Entonces tenemos un grupo de puntos W w w que es opcional.
‫Entonces usamos el signo de interrogación nuevamente, luego tenemos el nombre.
‫Y en este caso voy a usar un grupo de palabras con W Plus y tiene que ser una barra invertida W aquí, por supuesto.
‫Así que ahora también está usando el nombre de dominio, seguido de un punto que podría ser prácticamente un punto literal.
‫Así que usemos un punto literal dentro del siguiente grupo donde también tenemos otro carácter de palabra para que pueda ser
‫uno o más caracteres de palabra y eso es todo.
‫Entonces esa es nuestra estructura.
‫Así que este de aquí más una o más veces, que tenemos dos veces.
‫Entonces, el dominio de alto nivel es esta pieza aquí con el pensamiento anterior.
‫Entonces, el punto de barra invertida significa que es un punto literal que tenemos allí.
‫Luego tenemos la palabra en sí o bueno, en este caso eres tú o podría ser punto com o podría ser punto
‫academy y cosas así.
‫Luego tenemos el nombre en sí, que es esta pieza aquí.
‫Entonces, el nombre del dominio w w w no son y htp o https.
‫Está bien.
‫Por lo tanto, puede crear sus propias expresiones regulares, por supuesto, pero a veces tiene sentido buscarlas en Google.
‫Entonces, digamos que desea tener la expresión para direcciones de correo electrónico para que, por supuesto, pueda continuar y
‫decir, OK, quiero que tenga caracteres antes de eso.
‫Entonces dices W más y luego seguido de un signo de suma nuevamente, W más, seguido de un punto literal como ese.
‫Y tienes de nuevo algo como com lo que sea.
‫De nuevo, una barra invertida W plus.
‫Entonces eso sería algo muy, muy genérico, pero también podría ser bastante falso.
‫Así que creo que la gente ha pensado en expresiones regulares muy, muy complejas que realmente son bastante
‫seguras.
‫Así que echemos un vistazo a Internet para eso.
‫Así que volvamos a Internet y ahora busquemos en Google.
‫La dirección de correo electrónico rechaza o rechaza la expresión regular, y luego encuentra este sitio web, se
‫llama Email Rejects punto com y dice dirección de correo electrónico, expresión regular que el noventa y nueve coma nueve por ciento
‫funciona.
‫Y puede encontrar la expresión regular, el estándar oficial que la versión de Python y la versión
‫de JavaScript, HTML, etc.
‫Entonces, como puede ver, los diferentes lenguajes de programación aquí en este caso.
‫Así que ese es el Forese Sharp.
‫Pero como puede ver aquí, otra forma de usar el sistema, ese método envió por correo la clase de dirección de correo.
‫Entonces puede usar esta expresión o simplemente puede usar la clase.
‫Y normalmente usaría la clase, supongo, para determinar si una dirección de correo electrónico es válida.
‫Pase la dirección de correo electrónico a la dirección de correo, esa dirección de correo, constructor de clase de cadena.
‫Eso también suena como una forma válida.
‫Pero, en general, así es como puedes hacerlo.
‫Entonces, si desea tener una expresión regular, puede buscarla con mucha frecuencia.
‫Sin embargo, al usar ese y copiarlo en mi estudio visual, un buscador no funciona, así que
‫usemos el estándar para que el correo electrónico general sea rechazado.
‫Así que voy a copiar ese código aquí y volver a Visual Studio.
‫Ahora, busque esa expresión regular específica.
‫Y como puede ver más allá de la prueba, punto com funciona.
‫Si utilizo información en Google punto com, como puede ver, también funciona.
‫Ese código parece funcionar también y así sucesivamente.
‫Así que ahí estás.
‫Esa es la expresión regular.
‫Y si tuvieras que resolverlo por ti mismo, creo que necesitarías bastante tiempo.
‫Pero ese es el punto, ¿verdad?
‫No necesita desarrollar todo usted mismo y pensar en todo usted mismo.
‫Puede ahorrar horas y horas de su vida simplemente usando Internet para resolver las cosas y simplemente usando Google para
‫encontrar lo que está buscando.
‫Muy a menudo, encontrará una solución que funciona bastante bien y no es necesario que la cree todo usted
‫mismo.
‫Está bien.
‫Así que espero que les haya gustado este curso corto sobre expresiones regulares.
‫Y hay una última cosa que hacer, y eso es usar expresiones regulares en C Sharp.
‫Y sé que este video es bastante largo, pero espera, porque ahora usaremos C sostenido para usar expresiones
‫regulares.
‫Entonces, para usar expresiones regulares, puede seguir adelante y crear una expresión regular.
‫Y en este caso, como puede ver, no conoce los rechazos.
‫Así que necesitamos agregar el espacio de nombres, que es un sistema de texto que expresiones regulares.
‫Ese es el que queremos.
‫Ahora podemos usar expresiones regulares y lo voy a llamar expresión regular y esta será una nueva expresión regular.
‫Y aquí puedo ingresar el patrón.
‫Así que puedes, como puedes ver, el patrón de cuerda y puedes ponerlo aquí o puedes
‫crear un patrón de cuerda, que será tu patrón.
‫Entonces, digamos, bueno, en este caso, necesitamos usar el al principio y estoy usando la barra invertida D para encontrar todos los
‫números en mi patrón.
‫Así que se lo voy a dar al constructor de la clase regex aquí.
‫Y como puede ver ahora, usará este patrón de expresión regular, que en mi caso es solo un
‫dígito.
‫Entonces solo va a decir, OK, dame tus dígitos ahora.
‫Creemos una cadena de prueba y voy a llamar al texto y saludará.
‫Mi número es uno, dos, tres, uno cuatro.
‫Entonces esa será mi prueba.
‫Y ahora, para encontrar cada carácter o cada vez que se ajusta este patrón, usaré A
‫para cada ciclo porque quiero mostrar todas las coincidencias diferentes que hay.
‫Así que usemos una colección de coincidencias para eso.
‫La colección de coincidencias, si la revisa, es un tipo que no es válido en el contexto dado.
‫Bueno, eso está bien.
‫Creemos una colección de fósforos.
‫Solo voy a decir que la colección de coincidencias es igual a la expresión regular que coincide y el método de coincidencias.
‫¿Qué hará?
‫Bueno, tomará una entrada, que es mi texto, e intentará ajustarlo a mi patrón.
‫Entonces estamos usando esta expresión regular aquí.
‫Este es el patrón.
‫Se lo dimos a la expresión regular.
‫Entonces ahora está tratando de hacer coincidir el patrón con el texto que tenemos en el texto como esta línea de código aquí.
‫Entonces, lo que podemos hacer ahora es mostrar todos los diferentes éxitos.
‫Así que voy a decir algo como tantos resultados encontrados y voy a usar una nueva línea para eso.
‫Solo voy a decir así, OK, entonces esta es la cantidad de visitas que tengo y ese será el recuento
‫de puntos de mi colección de coincidencias.
‫Entonces, como puede ver, este objeto de colección de coincidencias tiene una
‫propiedad que se llama Count, y solo dirá, ¿cuántas veces encontró lo que intentó encontrar?
‫Entonces, sea cual sea el patrón y el texto, solo voy a decir texto aquí también.
‫Entonces digo dentro del texto, tengo tantos hits y ahora mostremos los hits reales.
‫Así que voy a usar para cada uno y será una coincidencia, que se llama hit in match collection.
‫Entonces, con esto para cada bucle, solo voy a recorrerlo.
‫Toda la colección de coincidencias o colección de coincidencias, que contiene todos los diferentes hits, y voy
‫a imprimir cada uno de los hits en la pantalla para ver también en qué punto de la cadena se
‫vendió, en qué posición dentro de esta cadena se encuentra. .
‫Así que digamos que tiene, no sé, son como ocho o siete caracteres aquí, ocho, nueve, diez.
‫Así que digamos alrededor de 20, 20.
‫Es este, 21 es este, 22 es ese y así sucesivamente.
‫Entonces, si quieres tener esos también, podemos usar una colección grupal, que será mi grupo y
‫se verá afectado por esos grupos.
‫A continuación, quiero mostrar eso para que S. W ..
‫Pulse dos veces el tiempo, y luego digo, está bien, quiero tener el golpe en sí, así que voy a usar un
‫corchete que se encuentra en y la posición.
‫Entonces, ¿cómo los consigo?
‫Bueno, yo uso el grupo que he creado aquí, así que esta colección de
‫grupos y solo voy a decir grupo que en realidad están entre corchetes en la posición cero.
‫Dame eso y dame su valor.
‫Y luego también quiero tener el index.
‫Entonces, Grupo cero e índice.
‫Está bien.
‫Ahora ejecutémoslo.
‫Lo que hará es darme el valor y el índice donde se encontró y comenzaré con un
‫control en cinco.
‫Entonces permanece abierto.
‫Y dice que uno fundó 23 para fundar un 24, tres encontró un veinticinco, uno veintiséis y cuatro a
‫veintisiete.
‫Como puede ver, ha encontrado dígitos y me ha dado la posición de esos dígitos y la posición es la posición
‫dentro de la cadena que tenemos aquí.
‫Está bien.
‫Entonces, si tengo un patrón diferente que dice que tengo este patrón de múltiples D, entonces quiero
‫tener cinco dígitos, así que veámoslo nuevamente.
‫Y ahora solo debería encontrar un dígito o una entrada y diga, hola, número solo uno, dos, tres,
‫cuatro, tres, uno, cinco, cuatro.
‫Y aquí, uno, dos, tres, uno, cuatro, encontrado en veintitrés.
‫Bien, lo que sea que hayas configurado aquí, lo encontrarás.
‫Y si busco allí, me dará esto.
‫Comenzaría en el índice tres.
‫Así que voy a empezar y lo haremos.
‫Hola.
‫Mis números, uno, dos, tres, cuatro.
‫Y se encuentran en tres porque esta es la tercera posición, nuestra posición tres aquí, índice tres de nuestra
‫cadena.
‫Bien, ese es un ejemplo de cómo puede usar rechazos y Do sostenido.
‫Hay más que puedes consultar.
‫Puede consultar la documentación para eso.
‫Pero este video trata más sobre la idea general de las expresiones regulares y cómo usarlas.