Una expresión regular, a menudo llamada también patrón, es una expresión que describe un conjunto de cadenas sin enumerar sus elementos. Por ejemplo, el grupo formado por las cadenas Handel, Händel y Haendel se describe mediante el patrón "H(aäae)ndel". La mayoría de las formalizaciones proporcionan los siguientes constructores: una expresión regular es una forma de representar a los lenguajes regulares (finitos o infinitos) y se construye utilizando caracteres del alfabeto sobre el cual se define el lenguaje. Específicamente, las expresiones regulares se construyen utilizando los operadores unión, concatenación y clausura de Kleene.


^ Inicio de la cadena


$ Fin de la cadena


[] Cualquier caracter del conjunto, por ejemplo [xyz] representa el conjunto formado por las letras x,y,z y encontrará cualquiera de esos caracteres.


[^] Cualquier caracter no incluido en el conjunto, por ejemplo[^xyz] representa cualquier caracter no incluido en el conjunto formado por las letras x,y,z


? Cero o una ocurrencia de lo que precede al símbolo, por ejemplo para encontrar cero o una ocurrencia de www. utilizaremos el patrón (www\.)?


+ El caracter que le precede debe aparecer al menos una vez, por ejemplo Google, Gooogle, Gooooooogle se representa con la siguiente expresión regular: Goo+gle


* El caracter que le precede debe aparecer cero, una o más veces, utilizando el ejemplo anterior, Gooo*gle representa Google, Goooogle, Goooooogle.


{x} x ocurrencias del caracter que lo precede, por ejemplo www. podría ser representado con el patrón w{3}\.


{x,z} Entre x y z ocurrencias del caracter que lo precede, con el ejemplo de Google, si quisiéramos que hubieran mínimo 2 letras o y máximo 5, utilizaríamos el patrón Go{2,5}gle


{x,} x o más ocurrencias de lo que lo precede, con el ejemplo de Google, para tener 2 o más letras o usaríamos la expresión regular Go{2,}gle


\. Un punto dentro del patrón, como definimos en uno de los ejemplos anteriores, la expresión w{3}\. define la cadena www.


\s Representa un espacio en blanco


\d Un dígito numérico


\w Un caracter alfanumérico


\n Un salto de línea


\r Representa el caracter de retorno de carro


\t Tabulador


\S Cualquier caracter excepto un espacio en blanco


\D Cualquier caracter excepto un dígito numérico


\W Representa cualquier caracter no alfanumérico