在字符串比較中使用通配符

此頁沒有內(nèi)容條目
內(nèi)容

Access > 表達(dá)式

 

在字符串比較中使用通配符

blueup_CLV全部顯示

bluedrop_CLV全部隱藏

內(nèi)置模式匹配提供了一個功能豐富的工具用于比較字符串。下表顯示可以與 Like 運算符一起使用的通配符以及它們匹配的數(shù)字或字符串的數(shù)目。

模式中的字符

表達(dá)式中的匹配

? 或 _(下劃線)

任意單字符

* 或 %

零個或多個字符

#

任意一位數(shù)字 (0 - 9)

[字符列表]

字符列表中的任意單字符

[!字符列表]

不在字符列表中的任意單字符

 

可以使用括在方括號 ([ ]) 中的一個字符或一組字符(字符列表)來匹配表達(dá)式中的任意單字符,并且字符列表可以包括 ANSI 字符集 中的幾乎所有字符(包括數(shù)字)。只有在用括號括起的情況下,才能使用左方括號 ([ )、問號 (?)、數(shù)字符號 (#) 和星號 (*) 等特殊字符來直接匹配它們自身。不能使用組中的右方括號 ( ]) 來匹配其自身,但可以在組外部使用右方括號作為單個字符。

除了用方括號括起的簡單字符列表外,字符列表還可以通過用連字符 (-) 分隔范圍的上限和下限來指定字符范圍。例如,如果在模式中使用 [A-Z],當(dāng)表達(dá)式中的相應(yīng)字符位置包含范圍 A 到 Z 中的任意大寫字母時,則生成一個匹配。您可以在方括號中包括多個范圍,且無需分隔各個范圍。例如,[a-zA-Z0-9] 匹配任意字母數(shù)字字符。

請務(wù)必注意,ANSI SQL 中的通配符 (%) 和 (_) 只能在 Microsoft Access 數(shù)據(jù)庫引擎和 Access OLE DB Provider 中使用。如果通過 Access 或 DAO 使用,它們將被視為文字。

模式匹配的其他重要規(guī)則包括:

字符列表開頭的感嘆號 (!) 表示如果表達(dá)式中發(fā)現(xiàn)除字符列表中字符以外的任何字符,將生成一個匹配。在方括號外面使用時,感嘆號匹配其自身。
您可以在字符列表的開頭(如果使用了感嘆號,則在感嘆號之后)或結(jié)尾使用連字符 (-) 來匹配連字符自身。在任何其他位置,連字符標(biāo)識某一范圍的 ANSI 字符。
指定某一范圍的字符時,字符必須以升序(A-Z 或 0-100)顯示。[A-Z] 是有效模式,而 [Z-A] 是無效模式。
字符序列 [ ] 將被忽略;它將被視為零長度字符串 ("")。