共用方式為


如何:使用規則運算式進行搜尋

規則運算式是在尋找及取代文字模式時所使用,為既簡明、又有彈性的標記法。特定的規則運算式集可用在 SQL Server Management Studio**[尋找和取代]** 對話方塊的 [尋找目標] 欄位。

若要使用規則運算式來尋找

  1. 若要啟用於 [快速尋找][檔案中尋找][快速取代][檔案中取代] 等作業期間,在 [尋找目標] 欄位使用規則運算式,請選取 [尋找選項] 之下的 [使用] 選項,再選擇 [規則運算式]

  2. 之後,就可以使用 [尋找目標] 欄位旁三角形的 [參考清單] 按鈕。請按一下這個按鈕來顯示最常用的規則運算式清單。當您從「運算式產生器」中選擇任何項目時,項目會插入 [尋找目標] 字串中。

[!附註]

[尋找目標] 字串所能使用的規則運算式與 Microsoft.NET Framework 程式設計中的有效規則運算式,兩者語法不同。例如,在 [尋找和取代] 中,標記運算式會使用括號標記法 {}。因此運算式 "zo{1}" 符合 "zo" 後面接著標記 1 的所有出現項目,如 "Alonzo1" 及 "Gonzo1"。但在 .NET Framework 中,限定詞會使用標記法 {}。因此運算式 "zo{1}" 符合 "z" 後面接著正好一個 "o" 的所有出現項目,如 "zone",而 "zoo" 就不符合。

下表說明 [參考清單] 中可用的規則運算式。

運算式

語法

說明

任何字元

.

符合任何單一字元,分行符號除外。

零或多個

*

符合零或多個前導運算式出現項目,會產生所有可能的相符項目。

一或多個

+

符合至少一個前導運算式出現項目。

行首

^

將相符字串固定在行首。

行尾

$

將相符字串固定在行尾。

字首

<

單字必須開始於文字中的這一點才相符。

字尾

>

單字必須結束於文字中的這一點才相符。

分行符號

\n

符合不限特定平台使用的分行符號。在取代運算式中,會插入分行符號。

集合中的任何單一字元

[]

符合 [] 以內的任何一個字元。若要指定字元範圍,請列出開始和結束的字元,並以破折號 (-) 分隔,例如 [a-z]。

非集合中的任何單一字元

[^...]

符合接在 ^ 後面之字元集以外的任何字元。

|

符合 OR 符號 (|) 前後的運算式。大多用於群組內。例如 (海綿 | 泥漿) 浴符合「海綿浴」和「泥漿浴」。

逸出

\

符合在反斜線 (\) 之後做為常值的字元。您可以尋找規則運算式標記法中所使用的字元,例如 { 及 ^。例如,\^ 會搜尋 ^ 字元。

標記運算式

{}

符合標示加上引號運算式的文字。

C/C++ 識別碼

:i

符合運算式 ([a-zA-Z_$][a-zA-Z0-9_$]*)。

加上引號的字串

:q

符合運算式 (("[^"]*")|('[^']*'))。

空格或定位點

:b

符合空格或定位字元。

整數

:z

符合運算式 ([0-9]+)。

[尋找和取代] 作業中有效的所有規則運算式清單很長,無法在 [參考清單] 中顯示出來。您也可以將下列其中任何規則運算式插入 [尋找目標] 字串中:

運算式

語法

說明

最少 — 零或多個

@

符合零或多個前導運算式出現項目,相符的字元數儘可能少。

最少 — 一或多個

#

符合一或多個前導運算式出現項目,相符的字元數儘可能少。

重複 n 次

^n

符合 N 個前導運算式的出現項目。例如 [0-9]^4 符合任何 4 位數序列。

分組

()

將子運算式分組。

第 n 個標記文字

\n

尋找或取代運算式中,指出第 n 個標記運算式相符的文字,其中 n 是 1 到 9 的數字。

取代運算式中,\0 會插入完整的相符文字。

欄位靠右對齊

\(w,n)

[取代] 運算式中,將欄位中的第 n 個標記運算式靠右對齊至少 w 個字元寬。

欄位靠左對齊

\(-w,n)

[取代]運算式中,將欄位中的第 n 個標記運算式靠左對齊至少 w 個字元寬。

預先排除相符

~(X)

排除運算式中與 X 相符的部分。例如,real~(ity) 符合 "realty" 及 "really" 中的 "real",但 "reality" 中的 "real" 則不符合。

英數字元

:a

符合運算式 ([a-zA-Z0-9])。

字母字元

:c

符合運算式 ([a-zA-Z])。

十進位數

:d

符合運算式 ([0-9])。

十六進位數

:h

符合運算式 ([0-9a-fA-F]+)。

合理數

:n

符合運算式 (([0-9]+.[0-9]*)|([0-9]*.[0-9]+)|([0-9]+))。

字母字串

:w

符合運算式 ([a-zA-Z]+)。

逸出

\e

Unicode U+001B 字元。

Bell

\g

Unicode U+0007 字元。

退格鍵

\h

Unicode U+0008 字元。

定位點

\t

符合定位字元 Unicode U+0009。

Unicode 字元

\x#### 或 \u####

符合以 Unicode 值給定的字元,其中 #### 是十六進位數。您可以用 ISO 10646 字碼指標,或用給定 Surrogate 字組值的兩個 Unicode 字碼指標,指定「基本多語文字面 (BMP)」(亦即,Surrogate) 以外的字元。

下表列出依照標準 Unicode 字元屬性的比對語法。兩個字母的縮寫與在 Unicode 字元屬性資料庫中所列者相同。可指定為字元集的一部份。例如,運算式 [:Nd:Nl:No] 符合任何種類的數字。

運算式

語法

說明

大寫字母

:Lu

符合任何一個大寫字母。例如,:Luhe 符合 "The",但不符合 "the"。

小寫字母

:Ll

符合任何一個小寫字母。例如,:Llhe 符合 "the",但不符合 "The"。

標題大小寫字母

:Lt

符合大小寫字母組合的字元,例如 Nj 及 Dz。

修飾字母

:Lm

符合字母或標點,如用來指出對前導字母修飾的逗號、X 型重音符號以及雙撇號。

其他字母

:Lo

符合其他文字,如哥德體文字 ahsa。

十進位數

:Nd

符合十進位數,如 0-9 及其相對的全形字元。

字母數字

:Nl

符合字母數字,如羅馬數字及表意數字的零。

其他數字

:No

符合其他數字,如古義大利文數字一。

左標點符號

:Ps

符合左邊的標點符號,如左括號和左大括號。

右標點符號

:Pe

符合右邊的標點符號,如右括號和右大括號。

左引號

:Pi

符合左邊的雙引號。

右引號

:Pf

符合單引號及右雙引號。

破折號

:Pd

符合破折號。

連接標點符號

:Pc

符合底線符號。

其他標點符號

:Po

符合 (,)、?、"、!、@、#、%、&、*、\、(:)、(;)、' 及 /。

空格分隔符號

:Zs

符合空白。

分行符號

:Zl

符合 Unicode 字元 U+2028。

段落分隔符號

:Zp

符合 Unicode 字元 U+2029。

不佔空間符號

:Mn

符合不佔空間符號。

組合符號

:Mc

符合組合符號。

含括符號

:Me

符合含括符號。

數學符號

:Sm

符合 +、=、~、|、< 及 >。

貨幣符號

:Sc

符合 $ 及其他貨幣符號。

修飾符號

:Sk

符合修飾符號,如曲折符號 (^)、抑音節符號和長音符號。

其他符號

:So

符合其他符號,如版權符號、段落符號 (i) 以及溫度符號。

其他控制項

:Cc

符合行尾。

其他格式

:Cf

格式化控制字元,如雙向控制字元。

代理

:Cs

符合半組 Surrogate 字組。

其他私人使用符號

:Co

符合私人造字區中的任何字元。

其他未指派的符號

:Cn

符合未對應 Unicode 字元的字元。

除了標準的 Unicode 字元屬性以外,另有下列屬性可指定為字元集的一部份。

運算式

語法

說明

α

:Al

符合任何一個字元。例如,:Alhe 符合如 "The"、"then" 及 "reached" 等字。

數值

:Nu

符合任何數字。

標點符號

:Pu

符合任何一個標點符號,如 ?、@、' 等等。

空白

:Wh

符合所有類型的空白,包括發行和表意空格。

Bidi

:Bi

符合由右至左書寫的字元,如阿拉伯文與希伯來文。

韓文

:Ha

符合韓文 (Hangul) 及組合的 Jamo。

平假名

:Hi

符合平假名字元。

片假名

:Ka

符合片假名字元。

表意/漢字

:Id

符合表意字元,如漢字。