Para crear una expresión regular, debes usar una sintaxis específica, es decir, caracteres especiales y reglas de construcción. Por ejemplo, la siguiente es una expresión regular simple que coincide con cualquier número de teléfono de 10 dígitos, con el patrón nnn-nnn-nnnn:
\d{3}-\d{3}-\d{4}
En la siguiente tabla, se describen algunos de los caracteres especiales más comunes para usar en expresiones regulares. Estos caracteres se clasifican de la siguiente manera:
| Caracteres | Descripción |
|---|---|
| Anclajes | |
| ^ | (signo de intercalación) Coincide con el inicio de la línea o la cadena de texto que busca la expresión regular. Por ejemplo, una regla de contenido con un asunto de ubicación y la siguiente expresión regular: ^abc captura cualquier mensaje de correo electrónico que tenga un asunto que comience con las letras abc. |
| $ | (signo de dólar) Coincide con el final de la línea o la cadena de texto que busca la expresión regular. Por ejemplo, una regla de contenido con un asunto de ubicación y la siguiente expresión regular: xyz$ captura cualquier mensaje de correo electrónico que tenga un asunto que termine con las letras xyz. |
| Metacaracteres | |
| . | (punto) Coincide con cualquier carácter, excepto con un salto de línea. |
| | | (barra vertical) Indica alternancia, es decir, un "o". Por ejemplo, cat|dog coincide con la palabra cat o dog. |
| \ | Indica que el siguiente carácter es literal y no especial. Por ejemplo: \. coincide con un punto literal, en lugar de cualquier carácter (carácter de punto). |
| Clases de caracteres | |
| […] | Coincide con cualquier carácter de un conjunto de caracteres. Separa el primer y el último carácter de un conjunto con un guion. Por ejemplo: [123] coincide con el dígito 1, 2 o 3 [a-f] coincide con cualquier letra de la a a la f Nota: Las expresiones regulares en las políticas de Cumplimiento del contenido distinguen mayúsculas de minúsculas. |
| [^…] | Coincide con cualquier carácter que no esté en el conjunto de caracteres. Por ejemplo: [^a-f]coincide con cualquier carácter que no sea una letra de la a a la f Nota: Las expresiones regulares en las políticas de Cumplimiento del Contenido distinguen mayúsculas de minúsculas. |
| [:alnum:] | Coincide con caracteres alfanuméricos (letras o dígitos): a-z, A-Z o 0-9 Nota: Esta clase de caracteres debe estar rodeada por otro conjunto de corchetes cuando la uses en una expresión regular, por ejemplo: [[:alnum:]]. |
| [:alpha:] | Coincide con caracteres alfabéticos (letras): a-z o A-Z Nota: Esta clase de caracteres debe estar rodeada por otro conjunto de corchetes cuando la uses en una expresión regular, por ejemplo: [[:alpha:]]. |
| [:digit:] | Coincide con dígitos: 0-9 Nota: Esta clase de caracteres debe estar rodeada por otro conjunto de corchetes cuando la uses en una expresión regular, por ejemplo: [[:digit:]]. |
| [:graph:] | Coincide solo con los caracteres visibles, es decir, cualquier carácter, excepto los espacios, los caracteres de control, etcétera. Nota: Esta clase de caracteres debe estar rodeada por otro conjunto de corchetes cuando la uses en una expresión regular, por ejemplo: [[:graph:]]. |
| [:punct:] | Coincide con caracteres de puntuación y símbolos: ! " # $ % & ' ( ) * + , \ -. / : ; < = > ? @ [ ] ^ _ ` { | } Nota: Esta clase de caracteres debe estar rodeada por otro conjunto de corchetes cuando la uses en una expresión regular, por ejemplo: [[:punct:]]. |
| [:print:] | Coincide con los caracteres visibles y los espacios. Nota: Esta clase de caracteres debe estar rodeada por otro conjunto de corchetes cuando la uses en una expresión regular, por ejemplo: [[:print:]]. |
| [:space:] | Coincide con todos los caracteres de espacio en blanco, incluidos los espacios, las tabulaciones y los saltos de línea. Nota: Esta clase de caracteres debe estar rodeada por otro conjunto de corchetes cuando la uses en una expresión regular, por ejemplo: [[:space:]]. |
| [:word:] | Coincide con cualquier carácter de palabra, es decir, cualquier letra, dígito o guion bajo: a-z, A-Z, 0-9 o _ Nota: Esta clase de caracteres debe estar rodeada por otro conjunto de corchetes cuando la uses en una expresión regular, por ejemplo: [[:word:]]. |
| Clases de caracteres abreviadas | |
| \w | Coincide con cualquier carácter de palabra, es decir, cualquier letra, dígito o guion bajo: a-z, A-Z, 0-9 o _ Equivalente a [:word:] |
| \W | Coincide con cualquier carácter que no sea de palabra, es decir, cualquier carácter que no sea una letra, un dígito o un guion bajo. Equivalente a [^[:word:]] |
| \s | Coincide con cualquier carácter de espacio en blanco. Por ejemplo, usa este carácter para especificar un espacio entre palabras en una frase: stockstips coincide con la frase sugerencias de acciones Equivale a [:space:] |
| \S | Coincide con cualquier carácter que no sea un espacio en blanco. Equivalente a [^[:space:]] |
| \d | Coincide con cualquier dígito del 0 al 9. Equivale a [:digit:]. |
| \D | Coincide con cualquier carácter que no sea un dígito del 0 al 9. Equivalente a [^[:digit:]] |
| Grupo | |
| (…) | Agrupa partes de una expresión. Usa la agrupación para aplicar un cuantificador a un grupo o para hacer coincidir una clase de caracteres antes o después de un grupo. |
| Cuantificadores | |
| {n} | Coincide exactamente con la expresión anterior n veces. Por ejemplo, [a-c]{2} coincide con cualquier letra de la a a la c solo si aparecen dos letras seguidas. Por lo tanto, la expresión coincidiría con ab y bc, pero no con abc ni aabbc. |
| {n,m} | Coincide con la expresión anterior un mínimo de n veces y un máximo de m veces. Por ejemplo, [a-c]{2,4} coincide con cualquier letra de la a a la c solo si las letras aparecen un mínimo de 2 veces y un máximo de 4 veces seguidas. Por lo tanto, la expresión coincidiría con ab y abc, pero no con aabbc. |
| ? | Indica que el carácter o la expresión anterior pueden coincidir 0 o 1 veces. Equivale al rango {0,1}. Por ejemplo, la siguiente expresión regular: colou?r coincide con colour o color, porque el signo de interrogación ? hace que la letra u sea opcional. |