當前位置:首頁 » 編程語言 » sql正則表達式轉義
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql正則表達式轉義

發布時間: 2022-10-03 18:59:48

Ⅰ 正則表達式中,斜杠"/" 在什麼情況下需要轉義什麼情況下不需要轉義

正常情況下「/」不需要轉義,除非你寫Javascript,因為它的patter是寫法是"/..../",所以裡面的/需要轉義。

sql Server存儲過程里的轉義字元問題

希望能幫到你:
create
procere
proc1
as
begin
declare
@str
varchar(8000)
select
@str
=
isnull(@str,'')+['欄位名']+';'
from
表名
insert
into
newtable('你要插入的欄位名')
values(@str)
--newtable
是另外一張表

Ⅲ JavaScript 正則表達式 轉義的使用方法

首先,你是用字元串構造一個正則,在字元串里反斜杠就轉義一次。
然後字元串構造為正則的時候會再次對串中的反斜杠進行轉義。
所以對於'\at'進行匹配,應該是四個反斜杠。
或者用這種語法:
var re1 = /.at/g;
var re3 = /\.at/g;
// match '\at'
var re4 = /\\at/g;

Ⅳ 正則表達式裡面有轉義字元怎麼防止轉義字元裡面

如果正則表達式需要匹配轉義字元,只要在轉義字元前再加上一個轉義字元即可。
\ →
\\

Ⅳ 如何在SQL Server中使用正則表達式

sqlserver中,主要有regexp_like,regexp_replace,regexp_substr,regexp_instr四個正則表達式函數。
1、regexp_like:
regexp_like(x,pattern[,match_option]),查看x是否與pattern相匹配,該函數還可以提供一個可選的參數match_option字元串說明默認的匹配選項。match_option的取值如下:
'c'
說明在進行匹配時區分大小寫(預設值);
'i'
說明在進行匹配時不區分大小寫;
'n'
(.)點號能表示所有單個字元,包括換行(俺還不知道什麼地方有用到換行.只知道sql裡面可以用chr(10)表示換行、
'm'
字元串存在換行的時候當作多行處理.這樣$就可匹配每行的結尾.不然的話$只匹配字元串最後的位置、
示例:
select
*
from
emp
where
regexp_like(ename,'^a[a-z]*n$');
可以查找ename中以a開頭以n結尾的行.例如ename為arwen或arwin或anden.但Arwen不能被匹配.因為默認是區分大小寫.如果是
select
*
from
emp
where
regexp_like(ename,'^a[a-z]*n$','i')
則可以查找ename為Arwen的行記錄。
2、regexp_instr:
REGEXP_INSTR(x,pattern[,start[,occurrence[,return_option[,
match_option]]]])用於在x中查找pattern。返回pattern在x中出現的位置。匹配位置從1開始。可以參考字元串函數
INSTR(),參數相關:
'start'
開始查找的位置;
'occurrence'
說明應該返回第幾次出現pattern的位置;
'return_option'
說明應該返回什麼整數。若該參數為0,則說明要返回的整數是x中的一個字元的位置;若該參數為非0的整數,則說明要返回的整數為x中出現在pattern之後
的字元的位置;
'match_option'
修改默認的匹配設置.與regexp_like裡面的相同.
示例:
DECLARE
V_RESULT
INTEGER
;
BEGIN
SELECT
REGEXP_INSTR('hello
world','o',1,1,0)
INTO
V_RESULT
FROM
DUAL;
DBMS_OUTPUT.PUT_LINE(V_RESULT);
END;
結果為5,即字母o第一個次出現的位置。
如果regexp_instr('hello
world','o',1,1,n)其中n為除0之外的整數。比如1,3。則結果為6.表示第一次出現字母o的後面一個字元的位置。
如果regexp_instr('hello
world','o',1,2,0)則結果為9.表示第二次出現字母o的位置.
3、regexp_replace:
REGEXP_REPLACE(x,pattern[,replace_string[,start[,occurrence[,
match_option]]]])用於在x中查找pattern,並將其替換為replae_string。可以參考字元串函數
REPLACE(),參數同REGEXP_INSTR函數
示例:
DECLARE
V_RESULT
varchar2(90);
BEGIN
SELECT
REGEXP_REPLACE('hello
world','o','x',1,1)
INTO
V_RESULT
FROM
DUAL;
DBMS_OUTPUT.PUT_LINE(V_RESULT);
END;
結果為hellx
world.
如果REGEXP_REPLACE('hello
world','o','x'),則結果為hellx
wxrld.
如果
REGEXP_REPLACE('hello
world','o','x',1,2)則結果為hello
wxrld.
4、regexp_substr:
REGEXP_SUBSTR(x,pattern[,start[,occurrence[,
match_option]]])用於在x中查找pattern並返回。可以參考字元串函數
SUBSTR(),參數同REGEXP_INSTR函數.
例如:
DECLARE
V_RESULT
VARCHAR2(255);
BEGIN
SELECT
REGEXP_SUBSTR('hello
world','l{2}')
INTO
V_RESULT
FROM
DUAL;
DBMS_OUTPUT.PUT_LINE(V_RESULT);
END
;
結果為ll
查詢到匹配的字元串才返回匹配的字元.沒查到就返回空。

Ⅵ sql 實現正則表達式

沒有正則表達式LIKE

確定給定的字元串是否與指定的模式匹配。模式可以包含常規字元和通配符字元。模式匹配過程中,常規字元必須與字元串中指定的字元完全匹配。然而,可使用字元串的任意片段匹配通配符。與使用 = 和 != 字元串比較運算符相比,使用通配符可使 LIKE 運算符更加靈活。如果任何參數都不屬於字元串數據類型,Microsoft® SQL Server™ 會將其轉換成字元串數據類型(如果可能)。

語法
match_expression [ NOT ] LIKE pattern [ ESCAPE escape_character ]

參數
match_expression 任何字元串數據類型的有效 SQL Server 表達式。
patternmatch_expression 中的搜索模式,可以包含下列有效 SQL Server 通配符

1 % 包含零個或更多字元的任意字元串
示例:WHERE title LIKE '%computer% ' 將查找處於書名任意位置的包含單詞 computer 的所有書名。

2 _(下劃線) 任何單個字元
示例:WHERE au_fname LIKE '_ean ' 將查找以 ean 結尾的所有 4 個字母的名字(Dean、Sean 等)。

3 [] 指定范圍中的任何單個字元
示例:WHERE au_lname LIKE '[C-P]arsen ' 將查找以arsen 結尾且以介於 C 與 P 之間的任何單個字元開始的 作者姓氏,例如,Carsen、Larsen、Karsen 等

4 [^] 不屬於指定范圍中的任何單個字元,與 [] 相反
示例:WHERE au_lname LIKE 'de[^l]% ' 將查找以 de 開始且其後的字母不為 l 的所有作者的姓氏。

一 使用 like 的模式匹配:
在搜索Datetime類型時,建議使用like .
LIKE 支持 ASCII 模式匹配和 Unicode 模式匹配。當所有參數,包括 match_expression、pattern 和 escape_character(如果有)都是 ASCII 字元數據類型時,將執行 ASCII 模式匹配。如果其中任何參數屬於 Unicode 數據類型,則所有參數將被轉換為 Unicode 並執行 Unicode 模式匹配。當對 Unicode 數據(nchar 或 nvarchar 數據類型)使用 LIKE 時,尾隨空格是有意義的。但是對於非 Unicode 數據,尾隨空格沒有意義。Unicode LIKE 與 SQL-92 標准兼容。ASCII LIKE 與 SQL Server 的早期版本兼容

二 使用 % 通配符

例如,此查詢將顯示資料庫中所有的系統表,因為它們都以字母 sys 開始:
SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME LIKE 'sys% '
若要查閱非系統表的所有對象,請使用 NOT LIKE 'sys% '。如果共有 32 個對象且 LIKE 找到 13 個與模式匹配的名稱,則 NOT LIKE 將找到 19 個與 LIKE 模式不匹配的對象

三 使用escape字句的模式匹配

可搜索包含一個或多個特殊通配符的字元串。例如,customers 資料庫中的 discounts 表可能存儲含百分號 (%) 的折扣值。若要搜索作為字元而不是通配符的百分號,必須提供 ESCAPE 關鍵字和轉義符。例如,一個樣本資料庫包含名為 comment 的列,該列含文本 30%。若要搜索在 comment 列中的任何位置包含字元串 30% 的任何行,請指定由 WHERE comment LIKE '%30!%% ' ESCAPE '! ' 組成的 WHERE 子句。如果不指定 ESCAPE 和轉義符,SQL Server 將返回所有含字元串 30 的行。

下例使用 ESCAPE 子句和轉義符查找 mytbl2 表的 c1 列中的精確字元串 10-15%

USE pubs
GO
IF EXISTS(SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'mytbl2 ')
DROP TABLE mytbl2
GO
USE pubs
GO
CREATE TABLE mytbl2
(
c1 sysname
)
GO
INSERT mytbl2 VALUES ( 'Discount is 10-15% off ')
INSERT mytbl2 VALUES ( 'Discount is .10-.15 off ')
GO
SELECT c1
FROM mytbl2
WHERE c1 LIKE '%10-15!% off% ' ESCAPE '! '
GO

四 使用 [] 通配符

下例查找姓為 Carson、Carsen、Karson 或 Karsen 的作者所在的行。
USE pubs
SELECT au_lname, au_fname, phone
FROM authors
WHERE au_lname LIKE '[CK]ars[eo]n '
ORDER BY au_lname ASC, au_fname ASC

Ⅶ Mysql正則表達式如何表達轉義字元 如我想匹配中括弧、豎線等字元該怎麼做 select '|' rlike '\|'不行

select '|' regexp '\\|'
select '|' rlike '\\|' 也是一樣的 O(∩_∩)O~

Ⅷ sql中如何表示%_等符號

直接表示,只有在like中表示通用符,可以用escape轉義,
如:select '%_' like '\%\_' escape '\'

Ⅸ SQL Server 2008 R2如何使用正則表達式搜索

使用正則表達式進行查找若要在「快速查找」、「在文件中查找」、「快速替換」或「在文件中替換」 操作過程中,在「查找內容」欄位啟用正則表達式,請在「查找選項」下選中「使用」,再選擇「正則表達式」。「查找內容」欄位旁邊的「引用列表」三角形按鈕將變為可用狀態。單擊此按鈕可顯示一組最常用的正則表達式。如果選擇了表達式生成器中的某個項,則可將該項插入「查找內容」字元串。注意「查找內容」字元串中使用的正則表達式與 Microsoft .NET Framework 編程中的有效正則表達式相比,語法上存在差異。例如,在「查找和替換」對話框中,大括弧 {} 用於表示帶標記的表達式。所以,表達式「zo{1}」將匹配所有「zo」後帶標記 1 的匹配項,如「Alonzo1」和「Gonzo1」。但在 .NET Framework 中,{} 符號用於表示量詞。因此,表達式「zo{1}」將匹配所有「z」後跟一個「o」的匹配項,如匹配「zone」,但不匹配「zoo」。下表對「引用列表」中提供的正則表達式進行了說明。 表達式語法說明任何單個字元.匹配除換行符外的所有單一字元。零個或更多*匹配零或更多前導表達式的匹配項,執行所有可能的匹配。一個或更多+匹配至少一個前導表達式的匹配項。行首^僅匹配行首位置的字元串。行尾$僅匹配行尾位置的字元串。字首<僅匹配文本中以此開頭的字。字尾>僅匹配文本中以此結尾的字。分行符
匹配與平台無關的換行符。在替換表達式中,插入一個換行符。在集合中的任何一個字元[]匹配[] 中的任何一個字元。若要指定字元范圍,請列出起始字元和結束字元,並用短劃線 (-) 分隔,如 [a-z]。不在集合中的任何一個字元[^...]匹配不在 ^ 之後的字元集中的任何一個字元。或|匹配「或」符號 (|) 兩旁的任一表達式。常用於組中。例如,(sponge|mud) bath 可以匹配「sponge bath」和「mud bath」。Escape\將反斜杠 (\) 後的字元作為文字匹配。此表達式允許您搜索正則表達式標記中使用的符號,如 { 和 ^。例如, \^ 可用於查找字元 ^。標記表達式{}匹配用括起來的表達式內的文本。C/C++ 標識符:i匹配表達式 ([a-zA-Z_$][a-zA-Z0-9_$]*)。用引號括起來的字元串:q匹配表達式 (("[^"]*")|('[^']*'))。空格或製表符:b匹配空格或製表符。整數:z匹配表達式 ([0-9]+)。「引用列表」中只列出了部分可在「查找和替換」操作中使用的正則表達式。還可以將下列任一正則表達式插入「查找內容」字元串: 表達式語法說明最少- 零個或更多@匹配零個或更多前導表達式的匹配項,匹配盡可能少的字元。最少- 一個或更多#匹配一個或更多前導表達式的匹配項,匹配盡可能少的字元。重復n 次^n匹配前導表達式的 n 個匹配項。例如,[0-9]^4 匹配所有四位數序列。分組()將子表達式分組第n 個標記文本
在「查找或替換」表達式中,指示匹配第 n 個標記表達式的文本,其中 n 為 1 到 9 之間的數字。在「替換」表達式中,\0 將插入完整的匹配文本。右對齊欄位\(w,n)在「替換」表達式中,在寬度至少為 w 個字元的欄位中,右對齊第 n 個標記表達式。左對齊欄位\(-w,n)在「替換」表達式中,在寬度至少為 w 個字元的欄位中,左對齊第 n 個標記表達式。阻止匹配~(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]+)。Escape\eUnicode U+001B。響鈴\gUnicode U+0007。Backspace\hUnicode U+0008。製表符\t匹配製表符,Unicode U+0009。Unicode 字元\x#### 或 \u####匹配由 Unicode 值確定的字元,其中 #### 為十六進制數字。可以使用 ISO 10646 碼位或給出代理項對值的兩個 Unicode 碼位,指定基本多語言面(即代理項)以外的字元。下表列出了按標准 Unicode 字元屬性匹配時的語法。雙字母縮寫和 Unicode 字元屬性資料庫中列出的縮寫相同。可以將這些縮寫指定為字元集的一部分。例如,表達式 [:Nd:Nl:No] 匹配任何數字。 表達式語法說明大寫字母:Lu匹配任何單個大寫字母。例如,:Luhe 匹配「The」,但不匹配「the」。小寫字母:Ll匹配任何單個小寫字母。例如,:Llhe 匹配「the」,但不匹配「The」。標題大寫字母:Lt匹配一個大寫字母後跟一個小寫字母的字元,例如 Nj 和 Dz。修飾字母:Lm匹配字母或標點符號(如逗號、交叉重音符和秒號),這些字母或標點符號是用於修飾前導字母的。其他字母: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匹配其他符號,如版權符號、段落標記和度數符號。其他控制:Cc匹配行尾。其他格式:Cf格式化控制字元,如雙向控制字元。代理項:Cs匹配代理項對的一半。其他專門用途:Co匹配任何專用區域的字元。其他未分配字元:Cn匹配未映射到 Unicode 字元的字元。除了標準的 Unicode 字元屬性以外,還可以將下列附加屬性指定為字元集的一部分。 表達式語法說明字母:Al匹配任何單字元。例如,:Alhe 匹配「The」、「then」 和「reached」之類的字。Numeric:Nu匹配任何數字。標點:Pu匹配任意一個標點符號,如 ?、@、' 等等。空格:Wh匹配任何類型的空格,包括印刷空格和表意空格。雙向:Bi匹配自右至左書寫的字元,如阿拉伯語和希伯萊語字元。朝鮮文字:Ha匹配朝鮮文字字母和組合字母。平假名:Hi匹配平假名字元。片假名:Ka匹配片假名字元。象形/漢字/日文漢字:Id匹配象形字元,如漢字和日文漢字。用於查找文本的正則表達式Expression Studio 4.0 其他版本 此主題尚未評級 - 評價此主題 通過使用正則表達式,可以在 Microsoft Expression Web 中執行繁復的查找和替換操作。如果您不知道所要查找的確切文本或代碼,或者要查找文本或代碼字元串的多個匹配項,則可以使用正表達式。正則表達式是一種文本模式,它可以描述所要查找的文本的一種或多種變體。正則表達式由特定字元(如字母「a」到「z」)和描述文本模式的特殊字元(如星號「*」)組成。例如,要在網站中查找「page」的所有變體,可以搜索「page*」。這樣,Expression Web 將在網站中查找「page」、「pages」、「pager」以及以「page」開頭的任何其他單詞的所有實例。在搜索中使用正則表達式時,特定的規則將控制哪些字元組合將執行特定的匹配操作。每種正則表達式(或正則表達式的組合)都稱為「語法」。可以在一個語法中使用多個正則表達式以精確匹配要搜索的目標。若要使用正則表達式,請參閱使用查找和替換編輯多個網頁。正則表達式語法 語法表達式說明.任意字元 用作換行符 (
) 以外的任何單個列印或非列印字元的通配符。例如,正則表達式 c.t 可匹配 cat、c t、cot 等字元串,但不能匹配 cost。在本例中,句點 (.) 是一個代表單個字元的通配符。它出現在字母「c」和「t」之間,因此字元「c」和「t」之間的任何單個字元都與表達式匹配 - 即使是空格也一樣。*最大為零或更多 用於匹配在此表達式之前出現零次或更多次的某個字元,可與盡可能多的字元相匹配。正則表達式 .* 用於匹配某個出現零次或更多次的字元。例如,正則表達式 b.*k 可匹配 book、back、black、blank 和 buck。在本例中,將句點 (.) 和星號 (*) 組合成一個語法。句號 (.) 緊挨在星號 (*) 表達式之前。星號 (*) 可匹配「b」和「k」之間任意出現零次或更多次的字元。句點 (.) 用作「b」和「k」之間字元的通配符。在本例中,它表示「b」和「k」之間的任意字元都可以反復出現。+最大為一或更多 用於匹配在此表達式之前出現一次或更多次的某個字元,可與盡可能多的字元相匹配。正則表達式 .+ 用於匹配某個出現一次或更多次的字元。例如,正則表達式 bo+. 可匹配 bob、book 和 boot。在本例中,將句點 (.) 和加號 (+) 組合成一個語法。句號 (.) 緊挨在加號 (+) 表達式之後。加號 (+) 可與出現一次或更多次的字母「o」相匹配。句點 (.) 用作每個單詞的最後一個字元的通配符。在本例中,該字元為「b」、「k」和「t」。@最小為零或更多 用於匹配在此表達式之前出現零次或更多次的某個字元,可與盡可能少的字元相匹配。正則表達式 .@ 用於匹配某個出現零次或更多次的字元。例如,正則表達式 a.@x 可匹配「abxbxb」中的「abx」和「acxcxc」中的「acx」。在本例中,將句號 (.) 和 @ 符號組合成一個語法。句點 (.) 緊挨在 @ 符號表達式之前。@ 符號可與「a」和「x」之間出現零次或更多次的任意字元相匹配。在本例中,句點 (.) 用作字元「a」和「x」之間的字元「b」和「c」的通配符。#最小為一或更多 用於匹配在此表達式之前出現一次或更多次的某個字元,可與盡可能少的字元相匹配。例如,正則表達式 si.#er 可匹配「sicker」或「silkier」。在本例中,將句號 (.) 和井號 (#) 組合成一個語法。句點 (.) 緊挨在井號 (#) 表達式之前。井號 (#) 可與「si」和「er」之間出現一次或更多次的任意字元相匹配。句點 (.) 用作單詞 sicker 中字元「c」和「k」的通配符,以及單詞 silkier 中「l」、「k」和「i」的通配符。[ ]字元集 用於匹配括弧 ([ ]) 內的任意一個字元。可以使用連字元 (-) 指定字元的范圍,例如 [a-z]。例如:正則表達式 c[aou]t 可以匹配 cat、cot 和 cut,但不能匹配 cet 或 cit。正則表達式 [0-9] 表示匹配任意一個數字。也可以指定多個字母範圍。正則表達式 [A-Za-z] 表示匹配所有大寫和小寫字母。^行首 定位於行首匹配。例如,正則表達式 ^When in 匹配以「When in」開頭且出現於行首的任意字元串,例如「When in the course of human events」或「When in town, call me」。然而,此正則表達式不匹配出現於行首的「What and when in the course of human events」。$行尾 定位於行尾匹配。例如,正則表達式 professional$ 可匹配字元串「He is a professional」,但不能匹配字元串「They are a group of professionals」。^^文件開頭 定位於文件開頭匹配。僅適用於在源代碼或文本文件中搜索文本。例如,若要匹配文件開頭的第一個 HTML 標記,請使用此正則表達式:^^$$文件末尾 定位於文件末尾匹配。僅適用於在源代碼或文本文件中搜索文本。例如,若要匹配文件末尾的最後一個 HTML 標記(標記後沒有空格),可使用此正則表達式:$$|或 表示在兩項之間進行選擇,即匹配「或」符號 (|) 前面或後面的表達式。例如,正則表達式 (him|her) 匹配下列各項:「it belongs to him」或者「it belongs to her」但不匹配行「it belongs to them」。\轉義特殊字元 用於匹配反斜線 (\) 後面的字元。這樣,就可以查找正則表達式語法中使用的字元(如左大括弧 ({) 或脫字型大小 (^))或其他一些特殊字元。例如,使用 \$ 可匹配美元符號 ($) 字元,而不是執行用於「定位於行尾」的正則表達式。同樣,使用 \. 可匹配句號 (.) 字元,而不是像句號 (.) 正則表達式一樣匹配任意一個字元。{}標記表達式 對與括弧內表達式匹配的文本加標記。可以使用 \N 在「查找」表達式中匹配出現在另一處的標記文本或者將標記文本插入「替換」表達式。例如,假設要查找連續出現兩次的單詞。若要搜索,請使用此表達式:{.#} \1假設連續出現的單詞由一個空格隔開,則需要在右大括弧 (}) 與反斜線 (\) 之間添加一個空格。在本例中,將井號 (#)、句號 (.) 和大括弧 ({}) 組合成一個語法。在此表達式中,.# 表示任何連續的字元。因為這部分表達式位於大括弧 ({}) 內,所以連續的字元將被加上標記,並被引用為 \1。此表達式將查找後跟空格以及字元與其完全相同的任意連續字元。\N第N 個標記表達式 在「查找」表達式中,\N 匹配由第 N 個標記表達式指定的文本,其中 N 是 1 到 9 的數字。在「替換」表達式中,\N 插入由第 N 個標記表達式匹配的文本,其中 N 是 1 到 9 之間的數字。\0 插入整個「查找」表達式指定的文本。例如,假設要查找連續出現兩次的單詞,並使用一個單詞替換它們。若要搜索,請使用此表達式:.#} \l假設連續出現的單詞由一個空格隔開,則需要在右大括弧 (}) 與反斜線 (\) 之間添加一個空格。在本例中,將井號 (#)、句號 (.) 和大括弧 ({}) 組合成一個語法。若要替換,請使用下列表達式:\l\1 表示在查找字元串中的第一對大括弧內找到的內容。通過在替換操作中使用 \1,實際上是將連續出現兩次的單詞替換為一個單詞。( )組表達式 標記子表達式的開始和結束。子表達式指括在 ( ) 中的正則表達式,例如表達式:(ha)+。在本例中,將加號 (+) 與括弧 ( ) 組表達式組合成一個語法。子表達式是 (ha),因為它括在括弧 ( ) 內。添加加號 (+) 後,該表達式可查找重復的字母對。加號 (+) 表示「ha」出現一次或更多次。此表達式可匹配下列各項:「haha」和「hahaha」。~x防止匹配 當x 出現在表達式中的此位置時會防止匹配。例如,正則表達式 real~(ity) 可匹配「realty」和「really」中的「real」,但不能匹配「reality」中的「real」。
換行符 用於匹配「代碼」視圖中的新行,或「設計」視圖中的 <br>。語法(
) 是匹配所有換行符的簡便方法。\t製表符 用於匹配單個製表符。例如,如果要查找所有位於行首的製表符,可使用此正則表達式:^\t+在本例中,將脫字型大小 (^)、加號 (+) 和製表符 (\t) 組合成一個語法。脫字型大小 (^) 位於單個製表符表達式之前,用於匹配位於行首的所有製表符。加號 (+) 表示匹配一個或多個製表符。[^]任何一個不屬於該集合的字元 用於匹配不包含在脫字型大小 (^) 之後的字元集內的任何字元。例如,若要匹配范圍之外的任何字元,可使用脫字型大小 (^) 作為左括弧後面的第一個字元。表達式 [^269A-Z] 匹配除 2、6、9 以及任何大寫字母之外的所有字元。n重復表達式 用於匹配脫字型大小 (^) 之前出現 n 次的表達式。例如,若 n 為 4,表達式 [0-9]^4 匹配任何 4 位數序列。在本例中,將字元集 ([ ]) 語法與重復 (^n) 語法組合,以展示正則表達式的更實用的方法。:a字母數字字元 用於匹配表達式 [a-zA-Z0-9]。可以使用表達式 [a-zA-Z0-9] 匹配出現一次的字母(大寫或小寫)或數字。也稱為「字母數字匹配項」。可使用簡寫表達式 :a 來代替 [a-zA-Z0-9]。:b空格 用於匹配代碼或文本中的任何空格。例如,若要匹配行首的單個空格字元,請使用此正則表達式:^:b:c字母字元 用於匹配表達式 [a-zA-Z]。使用此表達式時,可以匹配所有大寫或小寫字母。可以使用簡寫表達式 :c 來代替所有 [a-zA-Z]。:d十進制數 用於匹配表達式 [0-9]。利用此表達式可以匹配任何數字。例如,假設要在文本文件中查找美國的社會福利號。美國的社會福利號的格式為 999-99-9999。:d^3-:d^2-:d^4 或 [0-9]^3-[0-9]^2-[0-9]^4(使用 [0-9] 表示)可返回相同的結果。可使用簡寫表達式 :d 來代替所有 [0-9]。:h十六進制數 用於匹配表達式 [0-9a-fA-F]+使用此表達式可匹配由「A」和「F」之間的大寫或小寫字母和任意數字組成的十六進制數。例如,假設網站中的網頁使用了多種不同的背景色,而您要將這些網頁的顏色改為黑色(即 000000)。但是,您不知道現有顏色的十六進制值。使用此正則表達式可查找所有的現有十六進制值:\#:h可以使用 [0-9a-fA-F] 進行搜索,但在本例中,將反斜線 (\)、井號 (#) 和十六進制數字 (:h) 語法組合在一起。\# 匹配非表達式的井號 (#),而 :h 匹配任何十六進制字元序列。若要替換現有十六進制數值,可鍵入所需背景顏色的十六進制數值: 000000:i標識符 用於匹配表達式 [a-zA-Z_$][a-zA-Z0-9_$]*處理代碼時,如果需要匹配所有程序標識符,可使用簡寫表達式 :i,而無需鍵入上述冗長的表達式。:n有理數 用於匹配表達式 ([0-9]+\.[0-9]*)|([0-9]*\.[0-9]+)|([0-9]+)如果需要匹配帶小數點的整個數值,可使用簡寫表達式 :n,而無需鍵入上述冗長的表達式。:q帶引號的字元串 用於匹配表達式 ("[~"]*")|('[~']*')如果需要匹配加引號的所有引號,可使用簡寫表達式 :q,而無需鍵入上述冗長的表達式。:w字母字元串 用於匹配表達式 [a-zA-Z]+此語法是一種可匹配一個或多個大寫或小寫字母字元的簡便方法。:z整數 用於匹配表達式 [0-9]+此語法是一種可匹配任何整數的簡便方法。