У меня есть десять спрайтов (A0, A2 ... A9 спрайтов), и я перечисляю их родительский (myNode
), используя следующую строку поиска A[0-9]
, чтобы соответствовать спрайтам A0, A1 ... A9 ,Расширенный поиск с использованием метода enumerateChildNodesWithName
Из документов об использовании этого шаблона в строке поиска:
Эта строка поиска соответствует любой из детей текущего узла, которые с именем A0, A1, ..., A9.
Вот код, я использую:
myNode.enumerateChildNodesWithName("A[0-9]") { sprite, stop in
//do some stuff here
}
И это работает, как указано в документации. Но, позвольте сказать, что я сейчас 20 спрайтов ... Когда я попытался соответствовать спрайтов с именем A1, A2, A3 ... A20, как это:
myNode.enumerateChildNodesWithName("A[0-20]") {...}
он не работал ... Могу ли я ожидал слишком много этой функции или я чего-то не хватает?
Я могу сопоставить требуемые спрайты несколькими способами, например, помещая их в один и тот же контейнер и перечисляя все спрайты в нем, но это не так, и мне интересно, есть ли что можно сделать, чтобы использовать нотацию [lowerBound-upperBound]
?
Я предполагаю, что это более или менее обозначение регулярных выражений, а не нижняя/верхняя граница – zcui93
Я не думаю, что [0-9] - это «нижняя граница-верхняя граница», а просто «Один символ от 0 до 9», , Не знаете, насколько продвинутым может быть поиск, –
Не могли бы вы переименовать свои спрайты в A01-A20 и попробовать A [0-2] [1-9]? –