ConfirmMatch

ConfirmMatch[expr,form]

expr がパターン form と一致することを確認する.その他の場合は囲い込んでいる直近のEncloseにエラーをスローする.

ConfirmMatch[expr,form,info]

expr が確認できないときは,info を評価してスローするエラーにその値を入れる.

ConfirmMatch[expr,form,info,tag]

指定のタグを使って任意のエラーをスローする.

詳細

  • ConfirmMatch[expr,]は,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)

ConfirmMatch[expr,form]は,exprform と一致するときは expr を与える:

"foo"_Integerとは一致しないので,ConfirmMatchは評価を中止して囲い込んでいるEncloseにエラーをスローする:

引数をチェックする関数を作成する:

スコープ  (3)

ConfirmMatchは,エラーをスローするときは,評価を中止して一致するEncloseに戻る:

info は,expr が確認できないときしか評価されない:

動的にキャッチできるようにタグでConfirmMatchを呼び出す関数を作成する:

タグがないとConfirmMatchのスコープは語彙的になる:

アプリケーション  (1)

失敗を検出するとメッセージを出力する:

特性と関係  (1)

ConfirmMatchは,ConfirmByMatchQでエミュレートできる:

考えられる問題  (3)

ConfirmMatchにはタグを渡すか語彙的なEncloseの中に置くかしなければならない:

タグなしのConfirmMatchはシンボルConfirmMatchのインスタンスをタグ付きの異形で置換することで作用する:

タグ付きのConfirmMatchには,一致するタグを持つConfirmMatchが必要である:

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 Language. 2020. "ConfirmMatch." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/ConfirmMatch.html.

APA

Wolfram Language. (2020). ConfirmMatch. Wolfram Language & System Documentation Center. Retrieved from 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 ]}