sym:obj 或 Pattern[sym,obj]
表示赋予名称 sym 的模式对象 obj.
Pattern 
sym:obj 或 Pattern[sym,obj]
表示赋予名称 sym 的模式对象 obj.
更多信息
- 名称 sym 必须是一个符号.
- 对象 obj 可以是任何模式对象.
- 当使用一个变换规则时,在右边出现的 s 由在左边匹配的任何表达式替换.
- 运算符 : 有一个相对低的优先级. 表达式 x:_+_ 解释为 x:(_+_),而不是 (x:_)+_.
- 形式 s_ 等价于 s:_. 相似地,s_h 等价于 s:_h,s__ 等价于 s:__ 等等. »
范例
打开所有单元 关闭所有单元基本范例 (1)
范围 (1)
在任何模式匹配函数中使用 Pattern,包括 ReplaceAll:
{x} /. n : (x | y) :> n + 2Cases[{x, y, z}, n : (x | y) :> n + 2]以及 MatchQ:
MatchQ[x, n : (x | y)]属性和关系 (1)
{FullForm[s_], FullForm[s : _]}{FullForm[s_h], FullForm[s : _h]}以及包括 BlankSequence 和 BlankNullSequence 的格式:
{FullForm[s__], FullForm[s : __]}可能存在的问题 (1)
只有当 s 是一个符号时,输入 s:v 才是 Pattern 的一种格式:
FullForm[s : v]如果 s 是 Blank[…] 或 Pattern[sym,Blank[…]] 的特殊输入格式,那么 s:v 就是 Optional[s,v]:
{FullForm[_ : v], FullForm[s_ : v]}包含 BlankSequence[…] 和 BlankNullSequence[…] 的格式也类似:
{FullForm[__ : v], FullForm[s___ : v]}如果 s 是任何其他的表达式,那么这个格式就不是有效的输入:
ToExpression["f[]:v"]相关指南
-
▪
- 模式 ▪
- Wolfram 语言语法 ▪
- 字符串模式 ▪
- 可编程语言接口
相关的工作流程
- 编写一个以未计算形式返回的函数
相关链接
历史
1988年引入 (1.0)
文本
Wolfram Research (1988),Pattern,Wolfram 语言函数,https://reference.wolfram.com/language/ref/Pattern.html.
CMS
Wolfram 语言. 1988. "Pattern." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/Pattern.html.
APA
Wolfram 语言. (1988). Pattern. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/Pattern.html 年
BibTeX
@misc{reference.wolfram_2026_pattern, author="Wolfram Research", title="{Pattern}", year="1988", howpublished="\url{https://reference.wolfram.com/language/ref/Pattern.html}", note=[Accessed: 07-November-2026]}
BibLaTeX
@online{reference.wolfram_2026_pattern, organization={Wolfram Research}, title={Pattern}, year={1988}, url={https://reference.wolfram.com/language/ref/Pattern.html}, note=[Accessed: 07-November-2026]}