Cómo buscar texto mediante expresiones regulares

Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

Las expresiones regulares siguientes pueden reemplazar caracteres o dígitos en el campo Buscar del cuadro de diálogo Buscar y reemplazar de SQL Server Management Studio.

Requisitos previos

Cómo habilitar expresiones regulares

Estos son los pasos para habilitar expresiones regulares en la búsqueda.

  1. Vaya a Editar>Buscar y reemplazar>Búsqueda rápida.
  2. Junto a la barra de búsqueda, seleccione la flecha hacia abajo>Buscar en archivos.
  3. En la ventana Buscar y reemplazar, expanda Opciones de búsqueda y seleccione Usar expresiones regulares.

El botón Generador de expresiones situado junto al campo Buscar se activa. Seleccione este botón para mostrar una lista de las expresiones regulares disponibles. Al elegir alguno de los elementos del Generador de expresiones, este se inserta en la cadena Buscar.

En la tabla siguiente se describen algunas de las expresiones regulares del Generador de expresiones.

Expression Descripción
. Coincidencia con cualquier carácter (excepto un salto de línea)
.* Coincidencia con cualquier carácter cero o más veces
.+ Coincidencia con cualquier carácter una o más veces
[abc] Coincidencia con cualquier carácter del conjunto abc
[^abc] Coincidencia con cualquier carácter que no pertenezca al conjunto abc
\d Coincidir con cualquier carácter numérico
(?([^\r\n])\s) Coincidencia con cualquier carácter de espacio en blanco.
\b Coincidencia al principio o al final de la palabra
^ Coincidencia al principio de la línea
.$ Coincidencia con cualquier salto de línea
\w\r?\n Coincidencia con un carácter de palabra al final de la línea
(dog | cat) Capturar y numerar implícitamente la expresión dog | cat
(?<pet>dog | cat) Capturar la subexpresión dog | cat y asignarla el nombre pet

Ejemplos

Algunos ejemplos del uso de expresiones regulares.

Ejemplo 1: Buscar todas las instrucciones de selección

Quiere buscar todas las instrucciones SELECT en los scripts SQL.

SELECT\s+.*\s+FROM

Explicación del ejemplo 1

  • SELECT\s+: coincide con la palabra "SELECT" seguida de uno o varios caracteres de espacio en blanco.
  • .*: coincide con cualquier carácter (excepto los terminadores de línea) cero o más veces.
  • \s+FROM: coincide con uno o varios caracteres de espacio en blanco seguidos de la palabra "FROM".

Ejemplo 2: Buscar procedimientos con patrones de nomenclatura específicos

Quiere encontrar todos los procedimientos almacenados que empiecen por "usp_" en los scripts SQL.

CREATE\s+PROCEDURE\s+usp_[A-Za-z0-9_]+

Explicación del ejemplo 2

  • CREATE\s+PROCEDURE\s+: coincide con las palabras "CREATE PROCEDURE" seguidas de uno o varios caracteres de espacio en blanco.
  • usp_: coincide con la cadena literal "usp_".
  • [A-Za-z0-9_]+: coincide con uno o varios caracteres alfanuméricos o caracteres de subrayado.

Ejemplo 3: Buscar comentarios en scripts SQL

Quiere identificar todos los comentarios de una sola línea (a partir de --) en los scripts SQL.

--.*

Explicación del ejemplo 3

  • --: coincide con la cadena literal "--".
  • .*: coincide con cualquier carácter (excepto los terminadores de línea) cero o más veces.

Ejemplo 4: Buscar todas las instrucciones de actualización

Quiere buscar todas las instrucciones UPDATE en los scripts SQL.

UPDATE\s+.*\s+SET

Explicación del ejemplo 4

  • UPDATE\s+: coincide con la palabra "UPDATE" seguida de uno o varios caracteres de espacio en blanco.
  • .*: coincide con cualquier carácter (excepto los terminadores de línea) cero o más veces.
  • \s+SET: coincide con uno o varios caracteres de espacio en blanco seguidos de la palabra "SET".

Ejemplo 5: Buscar nombres de tabla en instrucciones DDL

Quiere extraer los nombres de tabla de instrucciones CREATE TABLE en los scripts SQL.

CREATE\s+TABLE\s+(\w+)

Explicación del ejemplo 5

  • CREATE\s+TABLE\s+: coincide con las palabras "CREATE TABLE" seguidas de uno o varios caracteres de espacio en blanco.
  • (\w+): coincide con uno o varios caracteres de palabra (alfanuméricos y guion bajo) y los captura para la extracción.

Para obtener más ejemplos, visite Expresiones regulares en Visual Studio.