Regexps son acrónimos de expresiones regulares. Las expresiones regulares son caracteres especiales o conjuntos de caracteres que nos ayudan a buscar datos y hacer coincidir el patrón complejo. Las expresiones regulares se usan más comúnmente con los comandos de Linux: – grep, sed, tr, vi.
Las siguientes son algunas expresiones regulares básicas:
No Señor. | Símbolo | Descripción |
---|---|---|
1. | . | Se llama carácter comodín. Coincide con cualquier carácter que no sea la nueva línea. |
2. | ^ | Coincide con el inicio de la string. |
3. | ps | Coincide con el final de la string. |
4. | * | Coincide con cero o más ocurrencias, es decir, cualquier número de veces del carácter de la string. |
5. | \ | Se utiliza para escapar después del carácter. |
6. | () | Se utiliza para hacer coincidir o buscar un conjunto de expresiones regulares. |
7. | ? | Coincide exactamente con un carácter en la string o secuencia. |
A continuación se muestra el enlace al archivo de texto que vamos a utilizar:
Archivo de texto utilizado: Fruits-name
1. Usar “.” (punto) para hacer coincidir strings.
Usando «.» podemos encontrar una string si no conocemos la string exacta, o simplemente recordamos solo el inicio y el final de la string, podemos usar «.» Como un personaje faltante, y llenará ese personaje faltante. Veamos un ejemplo para una mejor comprensión:’ Este archivo contiene el nombre de la fruta, y vamos a usar expresiones regulares en este archivo.
Guion:
#!/bin/sh
# Expresión regular básica
# 1. Usar “.” para hacer coincidir strings.
# cargando el archivo de texto
fruit_file=`gato fruit.txt | grep App.e`
# aquí la palabra original (respuesta) será Apple,
# pero como no conocemos la ortografía de Apple,
# pondremos un punto (.) en ese lugar.
eco “1. Usando ‘.’ para encontrar la palabra original, mientras que la palabra dada es ‘App.e’”
# mostrando la salida
echo «Salida:»
echo “$archivo_de_frutas”
Producción:
2. Usar “^” (signo de intercalación) para hacer coincidir el comienzo de la string
Usando «^», podemos encontrar todas las strings que comienzan con el carácter dado. Veamos un ejemplo para una mejor comprensión. Aquí estamos tratando de encontrar todos los nombres de frutas que comienzan con la letra B:
Guion:
#!/bin/sh
# Expresión regular básica
# 2. Usar «^» (signo de intercalación) para hacer coincidir el comienzo de la string
# cargando el archivo de texto
fruit_file=`gato fruit.txt | grep^B`
eco “2. Usar ‘^’ para encontrar todas las palabras que comienzan con la letra ‘B’”
# mostrando la salida
echo «Salida:»
echo “$archivo_de_frutas”
Producción:
3. Usar “$” (signo de dólar) para hacer coincidir el final de la string
Usando «$» podemos encontrar todas las strings que terminan con el carácter dado. Veamos un ejemplo para una mejor comprensión. Aquí estamos tratando de encontrar todos los nombres de frutas que terminan con la letra e:
guion:
#!/bin/sh
# Expresión regular básica
# 3. Usar «$» (dólar) para que coincida con el final de la string
# cargando el archivo de texto
fruit_file=`gato fruit.txt | grep e$`
eco “3. Usando ‘$’ para encontrar todas las palabras que terminan con la letra ‘e’”
# mostrando la salida
echo «Salida:»
echo “$archivo_de_frutas”
Producción:
4. Usar «*» (un asterisco) para encontrar cualquier número de repeticiones de una string
Usando «*», podemos hacer coincidir hasta cero o más ocurrencias del carácter de la string. Veamos un ejemplo para una mejor comprensión. Aquí estamos tratando de encontrar todos los nombres de frutas que
tiene una o más apariciones de ‘ap’ una tras otra.
Guion:
#!/bin/sh
# Expresión regular básica
# 4. Usar «*» para encontrar cualquier número de repeticiones de una string
# cargando el archivo de texto
fruit_file=`gato fruit.txt | grep ap*le`
eco “4. Usando ‘*’ para encontrar el nombre de todas las frutas que tienen una o más apariciones de ‘ap’ una tras otra en él”
# mostrando la salida
echo «Salida:»
echo “$archivo_de_frutas”
Producción:
5. Usar «\» (una barra invertida) para hacer coincidir el símbolo especial
Usando «\» con símbolos especiales como espacios en blanco (» «), nueva línea («\n»), podemos encontrar strings del archivo. Veamos un ejemplo para una mejor comprensión. Aquí estamos tratando de encontrar todos los nombres de frutas que tienen espacio en sus nombres completos.
Guion:
#!/bin/sh
# Expresión regular básica
# 5. Usando «\» para hacer coincidir el símbolo especial
# cargando el archivo de texto
fruit_file=`gato fruit.txt | grep «\ «`
eco “5. Usando ‘\’ para encontrar el nombre de todas las frutas que tienen un solo espacio en su nombre completo”
# mostrando la salida
echo «Salida:»
echo “$archivo_de_frutas”
Producción:
6. Usando «()» (llaves) para hacer coincidir el grupo de expresiones regulares.
Usando «()», podemos encontrar strings coincidentes con el patrón en «()». Veamos un ejemplo para una mejor comprensión. Aquí estamos tratando de encontrar todos los nombres de frutas que tienen espacio en su nombre completo.
Guion:
#!/bin/sh
# Expresión regular básica
# 6. Usando «()» (llaves) para hacer coincidir el grupo de expresiones regulares.
# cargando el archivo de texto
fruit_file=`gato fruit.txt | grep -E “(fruta)”`
eco “6. Usando ‘()’ para encontrar el nombre de todas las frutas que tienen la palabra ‘fruta’ en él”
# mostrando la salida
echo «Salida:»
echo “$archivo_de_frutas”
Producción:
7. Usando «?» (signo de interrogación) para encontrar todos los caracteres coincidentes
Usando “?”, podemos hacer coincidir 0 o 1 repeticiones de lo anterior. Por ejemplo, si hacemos algo como esto: ab? Coincidirá con ‘a’ o ‘ab’. Veamos otro ejemplo para una mejor comprensión. Aquí estamos tratando de encontrar todos los nombres de frutas que tienen el carácter ‘Ch’ en ellos.
Guion:
#!/bin/sh
# Expresión regular básica
# 7. Usando «?» (signo de interrogación) para hacer coincidir el
# cargando el archivo de texto
fruit_file=`gato fruit.txt | grep-E Ch?`
eco “7. Usando ‘?’ para encontrar el nombre de todas las frutas que tienen ‘Ch’ en él”
# mostrando la salida
echo «Salida:»
echo “$archivo_de_frutas”
Producción:
Nota: El «<< //// ////» se puede utilizar con el propósito de comentario de varias líneas.
Publicación traducida automáticamente
Artículo escrito por amnindersingh1414 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA