ConfirmMatch

ConfirmMatch[expr,form]

确认 expr 匹配样式 form,否则会向其周边离得最近的 Enclose 抛出异常.

ConfirmMatch[expr,form,info]

expr 未被确认,则对 info 进行计算,并将结果包含在抛出的异常中.

ConfirmMatch[expr,form,info,tag]

对任何抛出的异常使用指定标签.

更多信息

  • 如果 expr 成功被确认,则 ConfirmMatch[expr,] 返回 expr.
  • 在给定了一个标签后,ConfirmMatch 即被动态私有化. 否则即被语义上私有化. »
  • info 的默认值是 Null.
  • ConfirmMatch 生成的 Failure 包括以下类别:
  • "Information"ConfirmMatch[expr,form,info,] 中的 info
    "Expression"ConfirmMatch[expr,] 中的 expr
    "Pattern"ConfirmMatch[expr,form,] 中的 form
  • 这些类别中的值可使用 failure["prop"] 或直接通过 Enclose[expr,"prop"] 进行抓取.

范例

打开所有单元关闭所有单元

基本范例  (2)

expr 匹配 form,则 ConfirmMatch[expr,form] 给出 expr

由于 "foo" 不匹配 _IntegerConfirmMatch 停止计算,并向其周围的 Enclose 抛出一个异常:

创建一个检查其参数的函数:

范围  (3)

ConfirmMatch 抛出异常时,它会停止计算并回到匹配的 Enclose

info 仅当 expr 不能被确认时会被计算:

创建一个可调用有一个标签的 ConfirmMatch 这样它可以被动态抓取:

如果没有给定标签,ConfirmMatch 在语义上私有化:

应用  (1)

当检测到失败时打印一则消息:

属性和关系  (1)

ConfirmMatch 可通过 ConfirmByMatchQ 进行模拟:

可能存在的问题  (3)

ConfirmMatch 必须给定一个标签或在语义 Enclose 中:

通过用带标签的变量替换符号 ConfirmMatch 的实例可让未带标签的 ConfirmMatch 工作:

带标签的 ConfirmMatch 需要一个有匹配标签的 Enclose

Wolfram Research (2020),ConfirmMatch,Wolfram 语言函数,https://reference.wolfram.com/language/ref/ConfirmMatch.html.

文本

Wolfram Research (2020),ConfirmMatch,Wolfram 语言函数,https://reference.wolfram.com/language/ref/ConfirmMatch.html.

CMS

Wolfram 语言. 2020. "ConfirmMatch." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/ConfirmMatch.html.

APA

Wolfram 语言. (2020). ConfirmMatch. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/ConfirmMatch.html 年

BibTeX

@misc{reference.wolfram_2024_confirmmatch, author="Wolfram Research", title="{ConfirmMatch}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/ConfirmMatch.html}", note=[Accessed: 17-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_confirmmatch, organization={Wolfram Research}, title={ConfirmMatch}, year={2020}, url={https://reference.wolfram.com/language/ref/ConfirmMatch.html}, note=[Accessed: 17-November-2024 ]}