預定義的集合元字元

2021-04-21 09:40:13 字數 1739 閱讀 7530

使用目前提供的工具可以完成很多任務作。但是,要使用[0-9]表示模式中的每個數值數字,或(更糟)使用[0-9a-za-z]表示任何字母數字字元,還有一段相當漫長的過程。為了減輕處理這些常用但冗長模式的痛苦,事先定義了預定義元字元集合。正規表示式的不同實現定義了不同的預定義元字元集合,下面描述的預定義元字元集合在 .net framework 中得到system.text.regularexpressionsapi 的支援。這些預定義元字元的標準語法是,在反斜槓/後跟乙個或多個字元。多數預定義元字元只有乙個字元,它們的使用很容易,是冗長字元類的理想替代字元。以下是兩個示例:/d匹配所有數值數字,/w匹配所有單詞字元(字母數字加下劃線)。例外情況是一些特定字元**匹配,此時必須指定所匹配字元的位址,如/u000d將匹配 unicode 回車符。下面列出一些最常用的字元類及其等效的元字元。

元字元等效字元類

/a匹配鈴聲(警報);/u0007

/b匹配字元類外的字邊界,它匹配退格字元,/u0008

/t匹配製表符,/u0009

/r匹配回車符,/u000d

/w匹配垂直製表符,/u000b

/f匹配換頁符,/u000c

/n匹配新行,/u000a

/e匹配轉義符,/u001b

/040

匹配 3 位 8 進製 ascii 字元。/040 表示空格(十進位制數 32)。

/x20

使用 2 位 16 進製數匹配 ascii 字元。此例中,/x2- 表示空格。

/cc匹配 ascii 控制字元,此例中是 ctrl-c。

/u0020

使用 4 位 16 進製數匹配 unicode 字元。此例中 /u0020 是空格。

/*不代表預定義字元類的任意字元都只作為該字元本身對待。因此,/*等同於/x2a(是文字 *,不是 * 元字元)。

/p匹配已命名字元類「name」中的任意字元。支援名稱是 unicode 組和塊範圍。例如,ll、nd、z、isgreek、isboxdrawing 和 sc(貨幣)。

/p匹配已命名字元類「name」中不包括的文字。

/w匹配任意單詞字元。對於非 unicode 和 ecmascript 實現,這等同於[a-za-z_0-9]。在 unicode 類別中,這等同於[/p/p/p/p/p/p]

/w/w 的否定,等效於 ecmascript 相容集合[^a-za-z_0-9]或 unicode 字元類別[^/p/p/p/p/p/p]

/s匹配任意空白區域字元。等效於 unicode 字元類[/f/n/r/t/v/x85/p]。如果使用 ecmascript 選項指定 ecmascript 相容方式,/s 等效於[ /f/n/r/t/v](請注意前導空格)。

/s匹配任意非空白區域字元。等效於 unicode 字元類別[^/f/n/r/t/v/x85/p]。如果使用 ecmascript 選項指定 ecmascript 相容方式,/s 等效於[^ /f/n/r/t/v](請注意 ^ 後的空格)。

/d匹配任意十進位制數字。在 ecmascript 方式下,等效於 unicode 的[/p]、非 unicode 的[0-9]

/d匹配任意非十進位制數字。在 ecmascript 方式下,等效於 unicode 的[/p]、非 unicode 的[^0-9]

addslashes給預定義字元前面加上反斜槓

addslashes 函式在指定的預定義字元前新增反斜槓。這些預定義字元是 提示和注釋 注釋 預設情況下,php 指令 magic quotes gpc 為 on,對所有的 get post 和 cookie 資料自動執行 addslashes 不要對已經被 magic quotes gpc 轉義過...

addslashes給預定義字元前面加上反斜槓

addslashes 函式在指定的預定義字元前新增反斜槓。這些預定義字元是 提示和注釋 注釋 預設情況下,php 指令 magic quotes gpc 為 on,對所有的 get post 和 cookie 資料自動執行 addslashes 不要對已經被 magic quotes gpc 轉義過...

PHP中的預定義常量 預定義變數 魔術常量

php中的預定義常量 預定義變數 魔術常量 1 預定義常量 核心預定義常量 是在php的核心中就定義好了的常量。區分大小寫。php version 內建常量,php程式的版本,如3.0.8 dev php os 內建常量,執行php解析器的作業系統名稱,如windows。php eol 系統換行符,...