我在想,必須要有一種更簡潔的方法來檢查正則表達式是否不爲零/爲真。這是我一直在使用的: hold =(h4.text =〜/ Blah /) if!hold.nil? ... 結束重構ruby中的正則表達式檢查
我試過了:!(h4.text =〜/Blah/).nil?但它似乎沒有工作。
我在想,必須要有一種更簡潔的方法來檢查正則表達式是否不爲零/爲真。這是我一直在使用的: hold =(h4.text =〜/ Blah /) if!hold.nil? ... 結束重構ruby中的正則表達式檢查
我試過了:!(h4.text =〜/Blah/).nil?但它似乎沒有工作。
#!/usr/bin/ruby1.8
text = 'Blah blah blah'
puts "blah" if text =~ /Blah/ # => blah
text = 'Foo bar baz'
puts "blah" if text =~ /Blah/ # (nothing printed)
在一個Ruby條件語句, 任何既非零也非 錯誤的東西被認爲是真的。
=〜如果 是匹配項,則返回nil表示不匹配或整數字符位置。
零是一樣好的假;一個整數是 一樣好。
因此,你可以在如果直接使用的=結果〜,而等
您可以使用unless
這裏:
unless h4.text =~ /Blah/
#...
end
if h4.text !~ /Blah/
# ...
end
無論上述似乎工作,這是我結束了:
unless (h4.text =~ /Blah/) == nil
...
end
爲什麼你不能只是做'如果h4.text =〜/胡說/',如果這是你在找什麼? – kejadlen 2010-01-05 21:49:57