共用方式為


使用規則運算式搜尋文字

規則運算式是在尋找及取代文字模式時所使用,為既簡明、又有彈性的標記法。 您可以在 [尋找 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 | 符合 OR 符號 (|) 前後的運算式。 大多用於群組內。 例如 (海綿 | 泥漿) 浴符合「海綿浴」和「泥漿浴」。
逸出 |比對反斜杠後面的字元, (\) 做為常值。 您可以尋找規則運算式標記法中所使用的字元,例如 { 及 ^。 例如,\^ 會搜尋 ^ 字元。
標記運算式 {} 符合標示加上引號運算式的文字。
C/C++ 識別碼 :i 符合運算式 ([a-zA-Z_$][a-zA-Z0-9_$]*)。
加上引號的字串 :q 符合運算式 (("[^"]*")|('[^']*'))。
空格或定位點 :b 符合空格或定位字元。
整數 :z 符合運算式 ([0-9]+)。

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

運算是 語法 描述
最少 - 零或多個 @ 符合零或多個前導運算式出現項目,相符的字元數盡可能少。
最少 - 一或多個 # 符合一或多個前導運算式出現項目,相符的字元數儘可能少。
重複 n 次 ^n 符合 N 個前導運算式的出現項目。 例如,[0-9]^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 字元屬性以外,另有下列屬性可指定為字元集的一部分。

運算是 語法 描述
Alpha :Al 符合任何一個字元。 例如,:Alhe 符合如 "The"、"then" 及 "reached" 等字。
數值 :Nu 符合任何數字。
標點符號 :Pu 符合任何一個標點符號,如 ?、@、' 等等。
空白字元 :Wh 符合所有類型的空白,包括發行和表意空格。
Bidi :Bi 符合由右至左書寫的字元,如阿拉伯文與希伯來文。
韓文 :Ha 符合韓文 (Hangul) 及組合的 Jamo。
平假名 :Hi 符合平假名字元。
片假名 :Ka 符合片假名字元。
表意/漢字 :Id 符合表意字元,如漢字。

另請參閱

搜尋和取代
使用萬用字元搜尋文字