假設我有三個數組arr1
,arr1
和arr3
。Ruby找到像數組中的字符串數組
arr1 = ["apple", "book", "car", "dog"]
arr2 = ["apple", "book"]
arr3 = ["app", "boo"]
我如何檢查是否arr1
包括:arr2
,並arr3
與像通配符。
假設我有三個數組arr1
,arr1
和arr3
。Ruby找到像數組中的字符串數組
arr1 = ["apple", "book", "car", "dog"]
arr2 = ["apple", "book"]
arr3 = ["app", "boo"]
我如何檢查是否arr1
包括:arr2
,並arr3
與像通配符。
你可以使用Enumerable#grep
:
arr3.all? { |item| arr2.grep(/#{item}/)[0] }
#=> true
此相匹配的子串(例如ook
),只有前綴使用/^#{item}/
相匹配。
你可以編輯你回答一些例子,提供一些示例輸入和你期望的輸出。 –
我的意思是檢查arr2和arr3是否都在arr1中。 – hudadiaz
@hudadiaz你真的想檢查'arr2'的所有*元素*是否包含在'arr1'中,或者是否所有的'arr3' *模式*都在'arr1'中。 – Stefan