簡體   English   中英

紅寶石字符串范圍

[英]Ruby string range

我如何檢查字符串的紅寶石長度,它的范圍,像這樣:

s_query.length?[5..20]

我是紅寶石的新手,如何編寫這樣的代碼,以便進行檢查?

您幾乎明白了:

 (5..20).cover? s_query.length

檢查這個

s_query.length.between?(5, 20)

s_query.length.between?(5,20)

這是需要思考的事情:

(5 .. 10) === 'hello world'.length # => false
(5 .. 10) === 'foo bar'.length # => true

之所以有效,是因為在Range中定義了===來返回布爾值true / false,無論右側是否在左側范圍內。

文檔中

rng === obj→true或false單擊以切換源

如果obj是范圍的元素,則返回true,否則返回false。 方便地,===是case語句使用的比較運算符。

case 79
when 1..50   then   print "low\n"
when 51..75  then   print "medium\n"
when 76..100 then   print "high\n"
end

產生:

high

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM