Blank

または Blank[]
任意のWolfram言語の数式を表すパターンオブジェクトである.

または Blank[h]
頭部が の任意の式を表す.

詳細詳細

  • における頭部 はそれ自体にパターンオブジェクトを含むことはできない.

予備知識
予備知識

  • Blankは,Wolfram言語の任意の式を表すことができるパターンオブジェクトである.式Blank[]は,下線文字「_」で簡単に表現することもできる.より特定のパタンであるBlank[h](簡単には「_h」と表される)は,頭部 h を持つ任意の式を意味する.Blankは,パターンベースのプログラミングには非常に強力で便利な構文であり,パターンマッチングの機能が構築される基盤となるものである.Blankおよび関連のパターンを引数として取る関数の中で最もよく使われるものはSetDelayedである.その他に MatchQCasesDeleteCasesCountRuleDelayed等の関数も同じように使われる.
  • 1つ以上の空白の列は,パターンオブジェクトBlankSequence(2つの下線文字「__」)を使って表す.ゼロ以上の空白の列は,パターンオブジェクトBlankNullSequence(3つの下線文字「___」)で表す.一般に,複数のインスタンスのBlankを含むパターンは,BlankSequenceBlankNullSequenceを含むパターンより速く処理できる.後者2つの場合には,可能なマッチを見付けるために,より多くの可能性をテストしなければならないからである.
  • Blankは,Optionalと一緒に使って,省略された場合にデフォルト値で置き換えられる式のパターンオブジェクトを指定することができる.Alternativesのパターンオブジェクトは,Blankを含むいくつかの可能なパターンの指定を可能にする.Blankは,PatternTest(短縮形では p?test と書かれる)と組み合せることもできる.例えば,コードCases[Range[100], _?(IntegerQ[Sqrt[#]] &)]](これはSlot指定の純関数を利用する)は,100以下のすべての平方数のリストを選んで返す.

例題例題すべて開くすべて閉じる

  (2)  (2)

どんな式にもマッチするパターン:

In[1]:=
Click for copyable input
Out[1]=

どんな記号にもマッチするパターン:

In[2]:=
Click for copyable input
Out[2]=

任意の1つの引数を取る関数の定義:

In[1]:=
Click for copyable input
In[2]:=
Click for copyable input
Out[2]=

整数の引数のみについての関数定義:

In[3]:=
Click for copyable input
In[4]:=
Click for copyable input
Out[4]=
1988年に導入
(1.0)