2016-04-14 10 views
0

私は10個のスプライト(A0、A2 ... A9スプライト)を持っていますが、次の検索文字列A[0-9]を使用してその親(myNode)を列挙して、A0、A1 ... A9 。enumerateChildNodesWithNameメソッドを使用した高度な検索

検索文字列としてこのパターンの使用についてのドキュメントから:

この検索文字列は、A0、A1という名前 ある現在のノードの子のいずれかに一致...、A9を。ここで

私が使用するコードです:ドキュメントで述べたように、

myNode.enumerateChildNodesWithName("A[0-9]") { sprite, stop in 

    //do some stuff here  
} 

そして、この作品。私は期待してい...

myNode.enumerateChildNodesWithName("A[0-20]") {...} 

それは働いていなかった。しかし、私はA1、A2、A3という名前のスプライトを一致しようとすると、このように、A20 ... ...私は今20個のスプライトを持っているとしましょうあまりにも多くのこの機能や私は何かが不足している?私は同じコンテナにそれらを入れて、その中にスプライトのすべてを列挙することによって、例えば、いくつかの異なる方法で目的のスプライトを一致させることが可能ですが、それはポイントではない、とがある場合、私は疑問に思って

表記[lowerBound-upperBound]を使用するために行うことができる何か?

+0

私はそれが多かれ少なかれ、下限/上限よりもむしろ正規表現であると思います – zcui93

+0

[0-9]は "lower-bound-upperBound"だとは思えませんが、 "0-9の単一文字" 。検索がどのように進んでいるかわからない –

+0

スプライトの名前をA01-A20に変更し、A [0-2] [1-9]を試してみませんか? –

答えて

1

名前あなたのスプライトA01-A20A[0-2][1-9]

編集を試してみてください。検索引数が実際に正規表現であることが表示されます。関数の宣言から:

name適合するノード名のために単純な正規表現 を含むことができるXpathスタイルのパス。

So^A [0-9] {1,2} $は完全なノード名として1または2桁の後に 'A'と一致します。

関連する問題