ruby count 函数的一个用法,不知道是什么意思
黄舟
黄舟 2017-04-24 09:13:15
0
1
898

帮忙解释一下如下代码含义:

a = "hello world"
a.count "hello", "^l"          #=> 4

以下是官方文档中的解释:
http://ruby-doc.org/core-2.3.0/String.html#method-i-count

count([other_str]+) → fixnum
Each other_str parameter defines a set of characters to count. The intersection of these sets defines the characters to count in str. Any other_str that starts with a caret ^ is negated. The sequence c1-c2 means all characters between c1 and c2. The backslash character \ can be used to escape ^ or - and is otherwise ignored unless it appears at the end of a sequence or the end of a other_str.

a = "hello world"
a.count "lo"                   #=> 5
a.count "lo", "o"              #=> 2
a.count "hello", "^l"          #=> 4
a.count "ej-m"                 #=> 4

"hello^world".count "\\^aeiou" #=> 4
"hello-world".count "a\\-eo"   #=> 4

c = "hello world\\r\\n"
c.count "\\"                   #=> 2
c.count "\\A"                  #=> 0
c.count "X-\\w"                #=> 3
黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

모든 응답(1)
阿神

각 매개변수는 집합을 나타내고, ^은 보수를 나타냅니다. ("^l"은 l을 제외하고 나타냄) (모든 매개변수의 교집합) 범위 내에서 문자 수를 반환합니다.

"hello" 집합과 "^l" 집합의 교집합은 "heo"이므로 4개로 계산됩니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿