2009-04-05 9 views
7

क्या कोई तरीका है कि मैं रूबी में सभी चर ढूंढ सकता हूं जो एक विशेष स्ट्रिंग से शुरू होता है? उदाहरण के लिए, मैं है मेरी रूबी कार्यक्रम में निम्न चर:क्या रूबी में सभी चर पाने के लिए कोई तरीका है?

ret_d = 1 
ret_d2 = 23 

वहाँ एक समारोह है कि ["ret_d","ret_d2"] वापस आ जाएगी है? समस्या यह है कि मेरे पास सभी चर का सेट नहीं है।

उत्तर

15

Kernel#local_variables चाल चलाना चाहिए।

>> ret_d = 1 
=> 1 
>> ret_d2 = 23 
=> 23 
>> local_variables 
=> ["_", "ret_d", "ret_d2"] 
>> local_variables.select{|v|v=~/^ret_/} 
=> ["ret_d", "ret_d2"] 
5

यदि वे स्थानीय चर हैं, तो आप local_variables का उपयोग कर सकते हैं। हालांकि, यह एक गरीब आदमी की सरणी की तरह लगता है। आप एक वास्तविक ऐरे का उपयोग करने पर विचार कर सकते हैं।

+0

बहुत बढ़िया। धन्यवाद। –

संबंधित मुद्दे

 संबंधित मुद्दे