In Ruby 2.4, wie finde ich den frühesten Index eines Elements eines Arrays in einem anderen Array? Das heißt, wenn irgendein Element eines Arrays in dem anderen Array auftritt, möchte ich den ersten Index erhalten. Ich dachte, find_index könnte es tun, aberIn Ruby wie finde ich den Index eines Elements aus einem Array?
2.4.0 :004 > a = ["a", "b", "c"]
=> ["a", "b", "c"]
2.4.0 :005 > a.find_index("a")
=> 0
2.4.0 :006 > a.find_index(["b", "c"])
=> nil
Im obigen Beispiel würde ich erwarten, dass die Ausgabe „1“, weil das Element „b“ tritt bei Index 1 im Array „a“ zu sehen.
Sie haben 'a.find_index ("a")' den Index ' "a" zu finden' in '[ "a", "b", "c" ] ', also warum machst du' a.find_index (["b", "c"]) 'und nicht' a.find_index ("b") ', um den Index von' "b" 'zu finden? Der 'a.find_index ([" b "," c "])' sucht nach einem Element im Array 'a', das wie '["b", "c"] 'aussieht, was nicht vorhanden ist. Das ist ein Sub-Array, kein Element. – lurker
Versuchen Sie, das erste Vorkommen von 'b, c' sequenziell oder einfach den ersten Eintrag im angegebenen Array zu finden? – tadman