字符串通配符语法

某些调试器命令具有接受各种通配符的字符串参数。 这些参数在其各自的引用页上进行记录。

这些类型的参数支持以下语法功能:

  • 星号 (*) 表示零个或多个字符。

  • 问号 ( ) 表示任何单个字符。

  • 包含字符列表的方括号 ( [ ] ) 表示列表中的任何单个字符。 与列表中的一个字符完全匹配。 在这些括号中,可以使用连字符 ( ) 来指定范围。 例如, Prog[er-t7]am 匹配“Progeam”、“Program”、“Progsam”、“Progtam”和“Prog7am”。

  • 数字符号 (#) 表示上述字符的零个或多个。 例如, Lo#p 匹配“Lp”、“Lop”、“Loop”、“Looop”等。 还可以将数字符号与括号结合使用,以便 m[ia]#n 匹配“mn”、“min”、“man”、“maan”、“main”、“mian”、“miin”、“miain”等。

  • 加号 (+) 表示上述一个或多个字符。 例如, Lo+pLo#p 相同,只不过 Lo+p 与“Lp”不匹配。 同样, m[ia]+nm[ia]#n 相同,只不过 m[ia]+n 与“mn”不匹配。 a?+b 也与 a*b 相同,只是 a?+b 与“ab”不匹配。

  • 如果必须指定文本数字符号 (#) 、问号 (?) 、左方括号 ([) 、右括号 (]) 、星号 (*) 或加号 (+) 字符,则必须在字符前面添加反斜杠 ( \ ) 。 如果不将连字符括在方括号中,则连字符始终为文本。 但不能在带括号的列表内指定文本连字符。

指定符号的参数还支持一些附加功能。 除了标准字符串通配符外,还可以在用于指定符号的文本表达式之前使用下划线 (_) 。 将此表达式与符号匹配时,调试器会将下划线视为任何数量的下划线,甚至为零。 仅当匹配符号时,此功能才适用。 一般情况下,它不适用于字符串通配符表达式。 有关符号语法的详细信息,请参阅 符号语法和符号匹配