Определение, содержит ли массив строк определенную подстроку в ruby - PullRequest
30 голосов
/ 10 сентября 2010

У меня простой рубиновый вопрос.У меня есть массив строк.Я хотел бы определить, содержит ли этот массив подстроку какой-либо из строк.Как пример

a = ['cat','dog','elephant']
a.to_s.include?('ele')

Это лучший способ сделать это?

Спасибо.

Ответы [ 2 ]

60 голосов
/ 10 сентября 2010

a.any? должен сделать работу.

> a = ['cat','dog','elephant']
=> ["cat", "dog", "elephant"]
> a.any? { |s| s.include?('ele') }
=> true
> a.any? { |s| s.include?('nope') }
=> false
0 голосов
/ 10 июля 2019

Вот еще один способ: если вы хотите получить затронутый строковый элемент.

>  a = ['cat','dog','elephant']
=> ["cat", "dog", "elephant"]
> a.grep(/ele/)
=> ["elephant"]

, если вам нужно только логическое значение.

> a.grep(/ele/).empty?
=> false # it return false due to value is present

Надеюсь, это полезно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...