Remove duplicates conditionally from array in Ruby -


इस सवाल का पहले से ही एक उत्तर है: < 6 जवाब

तो मेरे पास यह सरणी है: / p>

  •   ['वन', 'दो', 'वन', 'वन', 'थ्री', 'थ्री', 'वन']  

    मुझे यह परिणाम प्राप्त करना है:

      ['वन', 'दो', 'वन', 'तीन', 'वन']  

    मैं उन आइटम को हटाना चाहता हूं जो कि पिछले आइटम के समान है रूबी में ऐसा कैसे करें

उपयोग करें

  ary = [ 'वन', 'दो', 'वन', 'वन', 'थ्री', 'थ्री', 'वन'] ary.chunk {| x | X} .मॅप (और: पहले) # = & gt; ["वन", "टू", "वन", "थ्री", "वन"]  

संख्यात्मक # चक वस्तुओं पर बराबरी करता है, वापसी के आधार पर उन्हें एक साथ चिनिंग करता है ब्लॉक का मूल्य लगातार तत्व जो एक ही ब्लॉक मान वापस लौटाते हैं उन्हें एक साथ गिना जाता है।

  ary.chunk {| x | X} .to_a = & gt; ["एक", "एक"], ["दो", ["दो"]], ["एक", "एक", "वन"], ["तीन", ["तीन" , "तीन"]], ["एक", ["एक"]]  

मानचित्र (& amp;; पहला) सरणी के प्रत्येक तत्व पर प्रथम विधि

और: पहले को proc to symbol कहा जाता है जो एक proc वस्तु बनाता है कि नक्शा

के लिए प्रत्येक तत्व का उत्पादन करती है, इसलिए ऊपर दिए गए उदाहरण को नीचे के रूप में फिर से लिखा जा सकता है:

  lambda_obj = - & gt; (ele) {ele.first} ary .chunk {| x | X} .map (और लैम्ब्डा_ओबीजे) # = & gt; ["एक", "दो", "वन", "तीन", "वन"]  

Comments

Popular posts from this blog

javascript - How to use the code plugin with popcornjs -

Apache Redirect Performance - .htaccess vs Apache configuration file ? -