此为 Mathematica 4 文档,内容基于更早版本的 Wolfram 语言
查看最新文档(版本11.2)

2.7.3 字符串模式

可以用 Mathematica 的等式  Equal  去测试两个字符串是否相等,但有时也需要判断一个字符串是否与一个给定的字符串模式匹配.
Mathematica 中可以定义字符串模式,它由普通的字符串组成,但其中某些字符被 看作特殊的代替字符.然后就可以用函数StringMathQ 去判断一个子字符串是否与 所定义的字符串模式相匹配. 但要注意字符串模式与 2.3 节中讨论的表达式 模式没有任何关系.

字符串的匹配

字符 * 在字符串模式中被用来指代任意序列的字符. 例如,字符串模式 "a*b" 将与任何以 a 开头和 b 结尾的字衔串匹配,在 a 与b之间可以有任意个 数的字符. 同样,"a*b*" 将与任何以 a 开头且至少含一个 b 的字符串匹配.

这个字符串与指定的模式匹配

Mathematica 字符串模式中 * 的使用与许多操作系统中文件名模式中 * 的 使用方法相同. 然而 Mathematica 的字符串模式中还提供了一些其它替代 字符以便能与不同类型的符号名匹配.

在字符串模式中使用的替代字符

Mathematica 中有一个一般约定:仅内部符号名包含大写字符. 当你遵循 这个约定时,就可以用 @ 作为字符串模式中的替代字符与自己所定义的符号名匹配, 而不与系统的内部符号名相匹配.

字符串匹配中的可选项

这两个字符串不匹配

允许进行拼写校正时,这两个字符串匹配

将大小写字符看作相同时字符串匹配