Dela via


Så här söker du efter text med reguljära uttryck

gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Följande reguljära uttryck kan ersätta tecken eller siffror i Hitta det fältet i dialogrutan SQL Server Management Studio Sök och ersätt.

Förutsättningar

Så här aktiverar du reguljära uttryck

Här följer steg för att aktivera reguljära uttryck i sökningen.

  1. Gå till Redigera>Sök efter och ersätt>snabbsökning.
  2. Bredvid sökfältet väljer du nedpilen >Sök i filer.
  3. I fönstret Sök och ersätt expanderar du Sök efter alternativ och väljer Använd reguljära uttryck.

Knappen Expression Builder bredvid Hitta det fältet blir sedan tillgängligt. Välj den här knappen om du vill visa en lista över tillgängliga reguljära uttryck. När du väljer ett objekt från Expression Builder, infogas det i Sök efter-strängen.

I följande tabell beskrivs några av de reguljära uttrycken i Expression Builder.

Uttryck Beskrivning
. Matcha ett enskilt tecken (förutom en radbrytning)
.* Matcha alla tecken noll eller fler gånger
.+ Matcha ett tecken en eller flera gånger
[abc] Matcha alla tecken i uppsättningen abc
[^abc] Matcha alla tecken som inte finns i uppsättningen abc
\d Matcha valfritt numeriskt tecken
(?([^\r\n])\s) Matcha alla blanktecken
\b Matcha i början eller slutet av ordet
^ Matcha i början av raden
.$ Matcha valfri radbrytning
\w\r?\n Matcha ett ordtecken i slutet av raden
(dog | cat) Fånga och implicit numrera uttrycket dog | cat
(?<pet>dog | cat) Avbilda underuttryck dog | cat och ge den namnet pet

Exempel

Några exempel på hur du använder reguljära uttryck.

Exempel 1: Hitta alla select-instruktioner

Du vill hitta alla SELECT-instruktioner i dina SQL-skript.

SELECT\s+.*\s+FROM

Förklaring till exempel 1

  • SELECT\s+: Matchar ordet "SELECT" följt av ett eller flera blankstegstecken.
  • .*: Matchar alla tecken (förutom radavgränsare) noll eller fler gånger.
  • \s+FROM: Matchar ett eller flera blankstegstecken följt av ordet "FROM".

Exempel 2: Hitta procedurer med specifika namngivningsmönster

Du vill hitta alla lagrade procedurer som börjar med "usp_" i dina SQL-skript.

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

Förklaring till exempel 2

  • CREATE\s+PROCEDURE\s+: Matchar orden "CREATE PROCEDURE" följt av ett eller flera blankstegstecken.
  • usp_: Matchar exakt med den bokstavliga strängen "usp_".
  • [A-Za-z0-9_]+: Matchar ett eller flera alfanumeriska tecken eller understreck.

Exempel 3: Hitta kommentarer i SQL-skript

Du vill identifiera alla enradskommentarer (från och med --) i dina SQL-skript.

--.*

Förklaring till exempel 3

  • --: Matchar literalsträngen "--".
  • .*: Matchar alla tecken (förutom radavgränsare) noll eller fler gånger.

Exempel 4: Hitta alla uppdateringsuttryck

Du vill hitta alla UPDATE-instruktioner i dina SQL-skript.

UPDATE\s+.*\s+SET

Förklaring till exempel 4

  • UPDATE\s+: Matchar ordet "UPDATE" följt av ett eller flera blankstegstecken.
  • .*: Matchar alla tecken (förutom radavgränsare) noll eller fler gånger.
  • \s+SET: Matchar ett eller flera blankstegstecken följt av ordet "SET".

Exempel 5: Hitta tabellnamn i DDL-instruktioner

Du vill extrahera tabellnamn från CREATE TABLE-instruktioner i dina SQL-skript.

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

Förklaring till exempel 5

  • CREATE\s+TABLE\s+: Matchar orden "CREATE TABLE" följt av ett eller flera blankstegstecken.
  • (\w+): Matchar ett eller flera ordtecken (alfanumeriskt och understreck) och samlar in dem för extrahering.

Fler exempel finns på sidan reguljära uttryck i Visual Studio