Interpreter[form]

入力を指定形式のオブジェクトとして解釈するために適用可能な,インタープリタオブジェクトを表す.

Interpreter[form,test]

test をオブジェクトに適用した結果Trueが返された場合にのみ,そのオブジェクトの解釈されたものを返す.その他の場合はFailureオブジェクトを返す.

Interpreter[form,test,fail]

検定が成功しなかった場合に,関数 fail を適用した結果を返す.

詳細とオプション

  • Interpreter[][input]は,特定の入力(文字列であることが多い)にインタープリタを適用する.
  • form の可能な指定値
  • "Expression"Wolfram言語による任意の式
    "HeldExpression"ホールドのまま返される式
    "InactiveExpression"非アクティブにされて返される式
    "SemanticExpression"自由形式入力から意味的に導かれた式
    "Number"標準形式による任意の数
    "SemanticNumber"意味的に導かれた数(例:"half")
    "ComputedNumber"計算によって導かれた数(例:"2+2")
    "Integer"整数
    "SemanticInteger"意味的に導かれた整数(例:"six")
    "ComplexNumber"実数あるいは複素数
    "MathExpression"数式(例:"sin(2x)+1")
    "MathFormula"数学公式 (例:"2x+3y=0")
    "HeldMathFormula"ホールドのまま返される数式
    "HexInteger"16進数による整数
    "RomanNumeral"ローマ数字
    "Boolean"ブール値(True/Falseを与えられた場合に,true/false,1/0等)
    "String"純粋な文字列
    "TextArea"任意長のテキスト(テキストアリアとして描画される)
    "TextLine"1行のテキスト
    "URLString"URL符号化された文字列
    "URL"正しくフォーマットされたURL
    "URLQueryString"URLのクエリ文字列
    "SemanticURL"意味的に導かれたURL(例:会社名から)
    "IPAddress"正しくフォーマットされたIPアドレス
    "FileName"ユーザのコンピュータ上のファイル名
    "UploadedFile"クラウドにアップロードするファイル
    "CachedFile"一時ディレクトリにキャッシュするファイル
    "EmailAddress"正しくフォーマットされた電子メールのアドレス
    "PhoneNumber"正しくフォーマットされた電話番号
    "Date"任意の標準形式による日付
    "StructuredDate"ピッカーによって得られた日付
    "DateTime"日付と時刻
    "Time"1日の中の時刻
    "ComputedDate"計算によって導かれた日付(例:"next tuesday")
    "Location"測地位置を返すものすべて
    "GeoCoordinates"経緯度で指定された測地位置
    "StreetAddress"任意の標準的な所在地住所
    "Country"国または国に準じる領土
    "AdministrativeDivision"州,都道府県,郡等
    "USState"アメリカ合衆国の州
    "USCounty"アメリカ合衆国の郡
    "Quantity"単位の付いた数量
    "ComputedQuantity"計算によって導かれた数量
    "StructuredQuantity"数に単位が続く形で与えられた数量
    "PhysicalQuantity"物理量("mass")
    "CurrencyAmount"貨幣額(例:"$7.50")
    "CurrencyName"貨幣の名称(例:"US dollars")
    "Company"企業
    "TickerSymbol"金融商品のティッカーシンボル
    "Image"画像
    "Color"任意の標準形式による色
    "StructuredColor"ピッカーから得た色
    "Sound"サウンド
    "Graphics"ベクトルグラフィックス
    "entity"任意のWolfram言語実体タイプ(例:"City"
    "entityclass"実体クラス(例:"CityClass"
    "format"任意の標準的Wolfram言語インポート形式
    Restricted[form,spec]特定の方法に制限されたフォーム
    DelimitedSequence[form,]リストとして返される,一連の区切り文字入りフォーム
    form1|form2|順番に試みられた,複数の考えられるフォーム
    {c1,c2,}選択肢 ciの文字集合
    {lab1c1,lab2c2,}ラベル labiの付いた値 ci
    AnySubset[{c1,c2,}]ciの任意の部分集合
    CompoundElement[{form1,}]formiで指定された要素のリスト
    CompoundElement[<|key1form1,|>]formiで指定された要素の連想
    RepeatingElement[form,]form で指定された全要素のリスト
    CloudObject[]配備されたGrammarRules
    QuantityVariable["pq"]物理量の pq の互換数量
  • $InterpreterTypesは,使用可能なインタープリタタイプの完全リストを与える.
  • Interpreter[][input]は,解釈された値,Missing["NoInput"]input が事実上空白の場合),Failure[]のいずれかを返す.
  • "entity"の場合は,EntityValueがサポートする任意の領域を使うことができる.
  • Interpreter[form,test][input]は,事実上,ImportString["input","format"]と等価である.
  • Interpreter[choices]は,choices についての規則のリストあるいは連想を許容する.曖昧さがない場合は,純粋な値のリストもまた使用できる.
  • Interpreter[form,test]["input"]は,指定された form を使って input を解釈した結果に test を適用する.
  • test を適用した結果がTrueの場合は,input を解釈した結果が返される.
  • test を適用した結果がFailureオブジェクトの場合は,そのオブジェクトが即座に返される.
  • test を適用した結果がFalseあるいは上記以外の何かである場合は,Interpreter[form,test,fail][input]中で,input の解釈に fail を適用した結果が返される.fail が与えられない場合は,Failureオブジェクトが返される.
  • InterpreterFailureオブジェクトを直接生成した場合には,次のタグが使われる.
  • "InterpretationFailure"与えられた文字列が指定された形式では解釈できなかった
    "RestrictionFailure"解釈は成功したが,制限に失敗した
    "ConditionFailure"解釈および制限に成功したが,明示的な検定に失敗した
    "ConnectionFailure"必要なクラウドへの接続ができなかった
  • Interpreterがサポートするオプション
  • AmbiguityFunction Automatic意味的に曖昧な結果に適用する関数
    DateFormat $DateStringFormat日付に仮定するデフォルトの形式
    DigitBlock Infinityブレークとブレークの間に仮定する桁数
    GeoLocation $GeoLocation意味解釈のために仮定する測地位置情報
    ImportOptions{}データのインポート時に使用するオプション
    NumberPoint "."小数点について仮定する文字列
    NumberSeparator {",", " "}数のブロック間のブレークに仮定する文字列
    NumberSigns {"-",""}正の数と負の数の符号に仮定する文字列
    TimeZone $TimeZone意味解釈のために仮定する時刻帯
  • Interpreter[spec][{input1,input2,}]は,specCompoundElementあるいはRepeatingElementのような,与えられた構造を直接解釈する構造を含んでいる場合を除いて,{Interpreter[spec][input1],Interpreter[spec][input2],}と等価である.
  • Interpreter[form]["string1"|"string2"|]は,結果として,指定された形式を使って解釈できる stringiの最初の解釈を返す.
  • Interpreter[form][CloudObject[]]Interpreter[form][File[]]Interpreter[form][URL[]]は,一般に,指定されたフォームに従って,クラウドオブジェクト,ファイル,あるいはURLのコンテンツを解釈した結果を返す.
  • Interpreter[form][expr]は,この他の式については,exprform についての指定に従っている場合は expr を返し,それ以外の場合はFailure[]を返す.

例題

すべて開くすべて閉じる

  (8)

任意の標準的な明示的形式の数を解釈する:

言葉で与えられた数を解釈する:

与えられた入力が指定のタイプではない場合に,失敗をフラグで表示する:

日付を解釈し,DateObjectを生成する:

都市を解釈し,Entityオブジェクトを生成する:

大学を解釈する:

場所を解釈し,GeoPositionを返す:

数のリストを解釈する:

Fileオブジェクトを解釈する:

URLオブジェクトを解釈する:

1から10の間に制限された数を解釈する:

数が範囲外の場合は,失敗が生成される:

地理範囲に制限された都市を解釈する:

結果について検定を実行する:

検定がパスしない場合に,カスタムの失敗モードを使う:

スコープ  (3)

さまざまなタイプの実体を解釈する:

計算を有効にする:

ファイルの文字列表現を解釈する:

オプション  (9)

AmbiguityFunction  (1)

可能なすべての解釈を返す:

DateFormat  (2)

カスタムの日付形式を指定する:

順番に試す複数の日付形式を指定する:

DigitBlock  (1)

セパレータ間の最長ブロックの桁数を変更する:

GeoLocation  (1)

意味解釈に使用する場所を設定する:

デフォルトで,ユーザの$GeoLocation が使われる:

NumberPoint  (1)

カスタムの小数点を設定する:

NumberSeparator  (1)

数字のブロック間のセパレータを変更する:

NumberSigns  (1)

正負の符号を変更する:

TimeZone  (1)

意味解釈に使用する時刻帯を設定する:

特性と関係  (4)

Interpreter指定を使って,FormObjectFormFunctionAPIFunctionが作られる:

頭部Interpreterは選択的である.しかし,オプションを指定することが役に立つことがある:

RepeatingElementおよびCompoundElementを使って複雑な構造を解釈する:

Alternativesを使って違う形のデータを解釈することもできる:

考えられる問題  (3)

数と日付のオプションは,意味解釈とは互換的ではない:

AmbiguityFunctionAutomaticではないものに設定されると,第2引数の test が結果に適用され,失敗に繋がることがある:

Interpreter["String"]は空文字列を取る.これは,FormFunctionには当て嵌まらない.この場合は空の文字列と空のフィールドが等しいとみなされる:

おもしろい例題  (1)

ホワイトハウスのGeoPositionを得る:

地図上に示す:

Wolfram Research (2014), Interpreter, Wolfram言語関数, https://reference.wolfram.com/language/ref/Interpreter.html (2016年に更新).

テキスト

Wolfram Research (2014), Interpreter, Wolfram言語関数, https://reference.wolfram.com/language/ref/Interpreter.html (2016年に更新).

CMS

Wolfram Language. 2014. "Interpreter." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2016. https://reference.wolfram.com/language/ref/Interpreter.html.

APA

Wolfram Language. (2014). Interpreter. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Interpreter.html

BibTeX

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

BibLaTeX

@online{reference.wolfram_2024_interpreter, organization={Wolfram Research}, title={Interpreter}, year={2016}, url={https://reference.wolfram.com/language/ref/Interpreter.html}, note=[Accessed: 18-November-2024 ]}