Szöveg keresése normál kifejezésekkel
A következőkre vonatkozik:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Az alábbi reguláris kifejezések karaktereket vagy számjegyeket cserélhetnek le a Az SQL Server Management Studio Keresés és csere párbeszédpanel mezőjében.
Előfeltételek
- SSMS- letöltése
Reguláris kifejezések engedélyezése
Az alábbiakban a reguláris kifejezések keresésben való engedélyezésének lépéseit találja.
- Nyissa meg Szerkesztés>Keresés és csere>Gyorskeresés.
- A keresősáv mellett válassza a lefelé mutató nyilat,>Keresés a fájlokban.
- A Keresés és csere ablakban bontsa ki a Keresési beállítások lehetőséget, majd válassza a Rendszeres kifejezések használatalehetőséget.
A Kifejezésszerkesztő gomb a Mit keres mező mellett lesz elérhető. Válassza ezt a gombot az elérhető reguláris kifejezések listájának megjelenítéséhez. Amikor egy elemet kiválaszt a Kifejezésszerkesztő-ben, a program beszúrja a Mit keressen sztringbe.
Az alábbi táblázat a Expression Buildernéhány reguláris kifejezését ismerteti.
Kifejezés | Leírás |
---|---|
. |
Egyetlen karakter egyeztetése (a sortörés kivételével) |
.* |
Tetszőleges karakter egyezése nullával vagy több alkalommal |
.+ |
Bármely karakter egy vagy több alkalommal történő illesztése |
[abc] |
Bármely karakter illesztése a abc készletben |
[^abc] |
Olyan karakterek illesztése, amelyek nincsenek a készletben abc |
\d |
Tetszőleges numerikus karakter egyeztetése |
(?([^\r\n])\s) |
Tetszőleges szóköz karakter egyeztetése |
\b |
Egyezés a szó elején vagy végén |
^ |
A sor elején lévő egyezés |
.$ |
Bármely sortörés megfeleltetése |
\w\r?\n |
Szó karakterének egyeztetése a sor végén |
(dog | cat) |
A dog | cat kifejezés rögzítése és implicit számozása |
(?<pet>dog | cat) |
Rögzítse a dog | cat alifejezés értékét, majd nevezze el pet -nek |
Példák
Néhány példa a reguláris kifejezések használatára.
1. példa: Az összes SELECT utasítás megkeresése
Az ÖSSZES SELECT utasítást meg szeretné keresni az SQL-szkriptekben.
SELECT\s+.*\s+FROM
Az 1. példa magyarázata
- SELECT\s+: Egyezik a "SELECT" szóval, majd egy vagy több szóköz karakterrel.
- .*: Bármely karaktert (kivéve a sorelválasztókat) nulla vagy több alkalommal illeszkedik.
- \s+FROM: Megegyezik egy vagy több szóköz karakterrel, amelyet a "FROM" szó követ.
2. példa: Adott elnevezési mintákkal rendelkező eljárások keresése
Az SQL-szkriptekben a "usp_" kezdetű tárolt eljárásokat szeretné megtalálni.
CREATE\s+PROCEDURE\s+usp_[A-Za-z0-9_]+
A 2. példa magyarázata
- CREATE\s+PROCEDURE\s+: Megegyezik a "CREATE PROCEDURE" szavakkal, majd egy vagy több szóköz karakterrel.
- usp_: Megegyezik a "usp_" literál sztringgel.
- [A-Za-z0-9_]+: Egy vagy több alfanumerikus karaktert vagy aláhúzást tartalmaz.
3. példa: Megjegyzések keresése SQL-szkriptekben
Az SQL-szkriptekben az összes egysoros megjegyzést (kezdve a --val) szeretné azonosítani.
--.*
A 3. példa magyarázata
- --: Megegyezik a "--" szó szerinti karakterlánccal.
- .*: Bármely karaktert (kivéve a sor terminátorait) nullával vagy több alkalommal egyezik meg.
4. példa: Az összes frissítési utasítás megkeresése
Az ÖSSZES UPDATE utasítást meg szeretné találni az SQL-szkriptekben.
UPDATE\s+.*\s+SET
Magyarázat a 4. példához
- UPDATE\s+: Megegyezik az "UPDATE" szóval, amelyet egy vagy több szóköz karakter követ.
- .*: Bármely karaktert (kivéve a sorvégjeleket) nulla vagy több alkalommal illeszt.
- \s+SET: Megfelel egy vagy több szóköz karakternek, amelyet a "SET" szó követ.
5. példa: Táblanevek keresése DDL-utasításokban
Az SQL-szkriptekben lévő CREATE TABLE utasításokból szeretné kinyerni a táblaneveket.
CREATE\s+TABLE\s+(\w+)
Magyarázat az 5. példához
- CREATE\s+TABLE\s+: Megfelel a "CREATE TABLE" kifejezésnek, amelyet egy vagy több szóköz karakter követ.
- (\w+): Megfelel egy vagy több szó jellemzőnek (alfanumerikus és aláhúzásjel), és rögzíti őket kinyerés céljából.
További példákért látogasson el Normál kifejezések a Visual Studio