在字串比較中使用 Like 運算子和萬用字元

套用到
Microsoft 365 Access Access 2024 Access 2021 Access 2019 Access 2016

內建的模式匹配功能幫助你比較線串。 下表顯示你可以與該操作員搭配 Like 使用的萬用卡字元及其匹配。

角色 () 模式 表現中的匹配
? 或者 _ (強調) 任何單一字元
*% 零個或多個角色
# 任何一個數字 (0-9)
[*charlist*] 查利斯特》中的任何單一角色
[!*charlist*] 任何不在《Charlist》裡的角色

你可以用一組或多個角色組成 (用括號包住 的) ([ ]) 來配合任何單一角色的 表情Charlist 幾乎可以包含 ANSI 字元集中的任何字元,包括數字。 你可以使用特殊字元開頭括號 ([) 、問號 (?) 、數字符號 (#) ,以及星號 () * ,只有在括號內才會直接對應。 你不能在團體內用 (]) 的結尾括號來匹配自己,但你可以在團體外作為個人角色使用。

除了括號內的簡單字元列表外, charlist 還能利用連字號 (-) 來區分字元範圍的上下界。 例如,若表達[A-Z]式中對應的字元位置包含範圍中任意大寫字母AZ,則使用模式時,該字型為匹配。 你可以在括號內包含多個範圍,但不限定範圍。 例如, [a-zA-Z0-9] 匹配任何字母數字字元。

ANSI SQL 萬用字元的 (%_) 僅在 Microsoft Access 資料庫引擎與 Access OLE DB 提供者中提供。 存取或 DAO 視為字面意義。

其他重要的模式匹配規則包括以下幾點:

  • charlist 開頭 () ! 的驚嘆號表示如果表情中出現除 charlist 以外的任何角色,則表示該配對。 當使用括號外時,驚嘆號會與自己相符。
  • 你可以在charlist ( (- 開頭、驚嘆號後) 連字號,如果) 用感嘆號,或是在charlist結尾用以對應。 在其他位置,連字號則用來識別一系列 ANSI 字元。
  • 當你指定一個字元範圍時,這些字元必須以 (A-Z0-100) 的從小排序出現。 [A-Z] 是一個有效的模式,但 [Z-A] 並非如此。
  • 角色序列 [ ] 被忽略了。 它被認為是零長度的弦 ("") 。