-1

ここには複数の while ループに関する有益な情報がたくさんありますが、.include で機能するものはありませんでした。

次のwhileループを機能させようとしていますが、役に立ちません。助けていただければ幸いです。

while browser.text.include? 'No results found for' || browser.text.include? '- did not match any documents.'
4

2 に答える 2

2

単に括弧を追加する必要がある可能性はありますか?

例えば:

[22] pry(main)> a=[1]
=> [1]
[23] pry(main)> a.include? 2
=> false
[24] pry(main)> a.include?2 || a.include?3
SyntaxError: unexpected tINTEGER, expecting end-of-input
[24] pry(main)> (a.include?2) || (a.include?3)
=> false
[25] pry(main)> 
于 2013-10-31T07:48:40.557 に答える
0

値が 2 つしかない場合でも、データをロジックから分離するのが本当に好きです。

no_result_strings = ['No results found for', '- did not match any documents.']

while no_result_strings.any?{|no_result| browser.text.include?(no_result)} do
    puts 'found no result, will continue.'
end

#Or, if browser.text is a string and you want it shorter:

while no_result_strings.any?{|x|browser.text[x]} do
    puts 'found no result, will continue.'
end
于 2013-10-31T08:23:07.673 に答える