FirstPosition[expr,pattern]
expr 中の pattern にマッチする最初の要素の位置を与える.マッチする要素が見付からない場合はMissing["NotFound"]を返す.
FirstPosition[expr,pattern,default]
pattern にマッチする要素が求まらなかった場合には default を返す.
FirstPosition[expr,pattern,default,levelspec]
levelspec で指定されるレベルに現れるオブジェクトのみを求める.
FirstPosition[pattern]
式に適用可能なFirstPositionの演算子形を表す,
FirstPosition
FirstPosition[expr,pattern]
expr 中の pattern にマッチする最初の要素の位置を与える.マッチする要素が見付からない場合はMissing["NotFound"]を返す.
FirstPosition[expr,pattern,default]
pattern にマッチする要素が求まらなかった場合には default を返す.
FirstPosition[expr,pattern,default,levelspec]
levelspec で指定されるレベルに現れるオブジェクトのみを求める.
FirstPosition[pattern]
式に適用可能なFirstPositionの演算子形を表す,
詳細とオプション
- FirstPosition[expr,pattern,default]では,default は pattern にマッチする要素が見付からなかったときにのみ評価される.
- 式 expr は,リスト,連想,あるいはその他の任意のタイプの式でよい.連想の場合は,FirstPositionはキーを与える.
- FirstPositionのデフォルトのレベル指定は{0,Infinity}で,Heads->Trueである.
- FirstPositionが返す部分指定{}は expr 全体を表す.
- FirstPosition[list,pattern,default,{1},Heads->False]は,list の完全な要素として現れるオブジェクトのみの位置を求める.
- FirstPositionは,標準的なレベル指定を使う.
-
n レベル 1 からレベル n まで Infinity レベル 1 からInfinityまで {n} レベル n のみ {n1,n2} レベル n1からレベル n2まで - 正のレベル n は,n 個の指標で指定される,expr のすべての部分からなる.
- 負のレベル-n は,深さが n である,expr のすべての部分からなる.
- レベル0は式全体に相当する.
- デフォルトのオプション設定Heads->Trueでは,FirstPositionは式の頭部とその部分を含む.
- FirstPositionは深さ優先の順序で式を横断する.
- FirstPosition[pattern][expr]はFirstPosition[expr,pattern]と等価である.
例題
すべて開く すべて閉じる例 (3)
FirstPosition[{a, b, a, a, b, c, b}, b]FirstPosition[{{a, a, b}, {b, a, a}, {a, b, a}}, b]FirstPosition[{x, y, z}, b]FirstPosition[{1 + x ^ 2, 5, x ^ 4, a + (1 + x ^ 2) ^ 2}, x ^ _]Associationにおける最初の位置を求める:
FirstPosition[<|{1 -> 1 + x ^ 2, 2 -> <|"a" -> x ^ 2|>, 3 -> x ^ 4, 4 -> a + (1 + x ^ 2) ^ 2}|>, x ^ _]スコープ (4)
FirstPosition[_Integer][{1, 1, f[a], 2, 3, y, f[8], 9, f[10]}]FirstPosition[<|"a" -> 1, "b" -> 2, "c" -> 3, "d" -> 4|>, _Integer ? PrimeQ]FirstPosition[{1, 2, 3}, _ ? StringQ, "NoStrings"]FirstPosition[{{1, 2}, {2, 3}, {3, 1}}, 3]FirstPosition[{{1, 2}, {2, 3}, {3, 1}}, 3, Missing["NotFound"], {1}]オプション (1)
Heads (1)
デフォルトで,FirstPositionは式の頭部を探す:
FirstPosition[x ^ 2 + y ^ 2, Power]FirstPosition[x ^ 2 + y ^ 2, Power, Heads -> False]特性と関係 (3)
FirstPosition[{1015177, "Junk", EndOfFile}, _ ? PrimeQ, Print["CriticalError"];$Failed]FirstPosition[{1015177, 2015177, 3015177}, _ ? PrimeQ, Print["CriticalError"];$Failed]Extractを使い,FirstPositionの結果に基づいて部分を抽出する:
u = {1 + x^2, 5, x^4, a + (1 + x^2)^2};FirstPosition[u, x ^ _]Extract[u, %]FirstPositionは最初の位置しか返さない:
FirstPosition[{a, b, b, a, a, c}, a]Positionはすべての位置を返す:
Position[{a, b, b, a, a, c}, a]FirstPositionは,PositionとReplaceの組合せで実装することができる:
FirstPosition[{a, b, b, a, a, c}, b]
FirstPosition[{a, b, b, a, a, c}, d]Replace[Position[{a, b, b, a, a, c}, b], {{} :> Missing["NotFound"], l_ :> First[l]}]
Replace[Position[{a, b, b, a, a, c}, d], {{} :> Missing["NotFound"], l_ :> First[l]}]考えられる問題 (1)
FirstPositionはパターンに基づいて検索するが,これは数値的等価性とは同じではないことがある:
FirstPosition[Range[-1, 1, 0.05], 0.1]Conditionを使ってパターンを書き,数値的等価性に基づいた検索を強制する:
FirstPosition[Range[-1, 1, 0.05], n_ /; n == 0.1]関連するガイド
-
▪
- リストの要素
テキスト
Wolfram Research (2014), FirstPosition, Wolfram言語関数, https://reference.wolfram.com/language/ref/FirstPosition.html.
CMS
Wolfram Language. 2014. "FirstPosition." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/FirstPosition.html.
APA
Wolfram Language. (2014). FirstPosition. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/FirstPosition.html
BibTeX
@misc{reference.wolfram_2026_firstposition, author="Wolfram Research", title="{FirstPosition}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/FirstPosition.html}", note=[Accessed: 17-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_firstposition, organization={Wolfram Research}, title={FirstPosition}, year={2014}, url={https://reference.wolfram.com/language/ref/FirstPosition.html}, note=[Accessed: 17-June-2026]}