Expresiones regulares básicas de Posix

POSIX significa Interfaz de sistema operativo portátil. Define un conjunto de interfaces de sistema operativo estándar basadas en el sistema operativo UNIX. Estos estándares están especificados por la sociedad IEEE (Instituto de Ingenieros Eléctricos y Electrónicos) que mantiene la compatibilidad entre diferentes sistemas operativos. Los sistemas POSIX están teorizados de tal manera que los datos o el código se pueden transferir sin problemas entre dos sistemas cualesquiera que cumplan con POSIX.

Los estándares POSIX definen interfaces de programación de aplicaciones (API) tanto a nivel de sistema como de usuario y shells de línea de comandos e interfaces de utilidad para la compatibilidad y/o portabilidad del software con varias distribuciones del sistema operativo Unix y también con otros sistemas operativos. El IEEE también posee la marca registrada de POSIX. Se alienta a los desarrolladores a usar POSIX, ya que les ahorra tiempo a los desarrolladores de todo el mundo y proporciona medios más fáciles para la portabilidad.

Historia de POSIX:

Anteriormente, los programadores de computadoras tenían que escribir diferentes programas desde cero para cada modelo de computadora. Esto requería mucho tiempo y, en la mayoría de los casos, era muy difícil, ya que cada modelo de computadora era diferente de los demás y había que tener especial cuidado para escribir un programa teniendo en cuenta su hardware. Después de que AT&T Bell Labs lanzara el sistema operativo Unix, nada volvió a ser igual. Unix rápidamente se hizo popular y varias distribuciones diferentes como BSD, Xenix, etc. entraron en escena. La introducción de nuevos sistemas operativos como Unix dificultaría aún más a los desarrolladores mantener su software entre tantos dispositivos y ahora también entre tantos sistemas operativos. Esto impulsó el establecimiento de algunos estándares que luego se conocieron como POSIX. Fueron lanzados por primera vez bajo el nombre de IEEE Standard 1003.1-1988 en el año 1988.

¿Qué son las expresiones regulares?

Las expresiones regulares, a menudo abreviadas como regex, no son más que secuencias de caracteres que proporcionan patrones de búsqueda en el texto. Se utilizan para varias operaciones basadas en strings, como buscar, encontrar y reemplazar, validar entradas, etc. 

Regex encuentra su uso en varios motores de búsqueda, editores de texto como MS Word e incluso en utilidades de procesamiento de texto como AWK o sed. La mayoría de los lenguajes de programación de propósito general como C, C++, Python, JS, Java, etc. admiten expresiones regulares.

Expresiones regulares POSIX:

Uno de los estándares de POSIX define dos métodos para usar expresiones regulares. «grep» y «egrep» se utilizan para implementar expresiones regulares en sistemas POSIX.

En la sintaxis Regex básica de POSIX, la mayoría de los caracteres se tratan como literales, es decir, solo coinciden entre sí (por ejemplo, j coincidirá con » j « ). Sin embargo, hay algunas excepciones, que se denominan metacaracteres .

Metacaracteres Descripciones
Para hacer coincidir cualquier personaje una vez. El carácter de punto coincide con un punto literal, dentro de las expresiones de paréntesis POSIX. Por ejemplo, ac coincide con «abc», etc., pero [ac] solo coincide con «a», «.» o «c».
Se utiliza para definir un rango. Por ejemplo, [anuncio] coincidirá con los caracteres a a d, ambos inclusive.
Para hacer coincidir cualquier cosa dentro de los corchetes. Por ejemplo, [ab] coincidirá con a o b.
El ^ (signo de intercalación) dentro de los corchetes niega las expresiones. Por ejemplo, [^a] coincidirá con cualquier cosa excepto con a.
El símbolo del dólar coincide con la posición final de la string si es el último carácter de la expresión regular.
Para hacer coincidir el carácter anterior 0 o más veces. Por ejemplo, a*d coincidirá con annnd, aaaaad, etc.
Para hacer coincidir los caracteres anteriores n veces. Ejemplo, [0-9]{3} coincidirá con 123, 234, 345, etc.
Para hacer coincidir el carácter anterior al menos n veces y no más de m veces. Ejemplo, [0-9]{3,5} coincidirá con 123, 3456, 45668, etc.

Algunos ejemplos:

1. Para hacer coincidir cualquier string de tres letras que termine en at. Por ejemplo, gato, sombrero, etc.

.at

2. Para hacer coincidir todas las strings que terminan en arroba excepto bat.

[^b]at

3. Para hacer coincidir sombrero y gato , pero solo al comienzo de la string o línea.

^[hc]at

4. Para unir letras mayúsculas.

[:upper:] (similar to [A-Z])

5. Para unir letras minúsculas.

[:lower:] (similar to [a-z])

6. Para hacer coincidir los caracteres de espacio en blanco.

[ \t\n\r\f\v]

Publicación traducida automáticamente

Artículo escrito por jaygala260 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *