मैं एक सरणी में प्रत्येक nth आइटम का चयन करने के लिए रूबी में एक रास्ता खोजने के लिए देख रहा हूँ। उदाहरण के लिए, हर दूसरे आइटम का चयन परिणत हो गया:आप सरणी में प्रत्येक nth आइटम का चयन कैसे करते हैं?
में["cat", "dog", "mouse", "tiger"]
:
["dog", "tiger"]
वहाँ ऐसा करने के लिए एक रूबी विधि है, या वहाँ यह करने के लिए किसी भी अन्य तरीका है?
मैं की तरह कुछ उपयोग करने की कोशिश:
[1,2,3,4].select {|x| x % 2 == 0}
# results in [2,4]
लेकिन यह है कि केवल पूर्णांकों, नहीं तार के साथ एक सरणी के लिए काम करता है।
के रूप में लिख सकते हैं यह सही है। इतना साफ। बहुत बहुत धन्यवाद :) – sjsc
धन्यवाद, कृपया ध्यान दें कि मैंने एक-एक-एक मुद्दा तय किया है कि 'n = 3' दिखाएगा। –
'चरण' ने मुझे शुरुआत में समझ में नहीं आया क्योंकि मैंने पहले उस फॉर्म का उपयोग नहीं किया है। यह '(n-1 ... a.size) .step (n) .map {| i | के बराबर है एक [i]} ' – Matt