5
나는 Ruby에 초보자입니다.Ruby 문자열에 여러 문자열이 포함되어 있으면 조건을 확인 하시겠습니까?
if (mystring.include? "string1") || (mystring.include? "string2") ||
(mystring.include? "string3")
나는 Ruby에 초보자입니다.Ruby 문자열에 여러 문자열이 포함되어 있으면 조건을 확인 하시겠습니까?
if (mystring.include? "string1") || (mystring.include? "string2") ||
(mystring.include? "string3")
예 아래와 같이 :이 쓸 수있는 더 좋은 방법이 있습니다 Enumerable#any?
다른 방법 (더 빠르게)입니다.지정된 블록에 컬렉션의 각 요소를 전달합니다 : 여기
이 문서입니다 . 블록이 false 또는 nil이 아닌 값을 반환하면 메서드는if %w(string1 string2 string3).any? { |s| my_string.include? s } # your code end
true
을 반환합니다. 블록이 주어지지 않으면 Ruby는{ |obj| obj }
의 암시 적 블록을 추가하여? 적어도 1 개 (살)의 컬렉션 멤버가false
또는nil
가 아닌 경우는 true를 돌려줍니다.그냥[13] pry(main)> ary = %w(string1 string2 string3) => ["string1", "string2", "string3"] [14] pry(main)> Regexp.union(ary) => /string1|string2|string3/ [15] pry(main)> "abbcstring2"[Regexp.union(ary)] => "string2" [16] pry(main)> "abbcstring"[Regexp.union(ary)] => nil
Regexp::union
및str[regexp] → new_str or nil
읽기 : 여기
글쎄, 당신은 항상 다른 jwz 인용 :
if mystring =~ /string1|string2|string3/
...
end
와우를 걸고 (여기에 정규 표현식을 사용할 수 있습니다! 매우 예쁘고 정확합니다 :) – Pavan
오, 정말 고맙습니다. 감사합니다. – Kuroun