나는 #
이 나타난 횟수를 계산하기 위해 예를 들어 어떤 것이 나타 났던 횟수를 어떻게 계산할 것인지 궁금해하고있었습니다. 문자열이 의미하는 경우,심볼을 본 횟수를 세는 것
H#i thank#s for the hel#p
그러면 다음과 같이됩니다. h1i thank2s for the hel3p
.
#
을 확인하는 것이 쉽다는 것을 알고 있습니다. 그러나 내가 끊어 놓은 부분은 숫자를 얻기 위해 기본적인 수학을하는 법을 아는 것입니다. 죄송합니다. 이것은 바보 같은 질문이며 도움을 주셔서 감사합니다!
@Yuki가 가장 좋은 해결책을 제안했지만 실천을 위해이 방법을 시도해 볼 수도 있습니다. 먼저 문자열을 문자 배열로 변환합니다. [String # split] (http://www.ruby-doc.org/core-2.1.0/String.html#method-split) 또는 [String # chars ] (http://www.ruby-doc.org/core-2.1.0/String.html#method-i-chars) (또는 [String # each_char]를 사용하는 열거 자 (http : //www.ruby- doc.org/core-2.1.0/String.html#method-i-each_char)). 배열 요소 '#''에 대한 대체 작업을 수행 한 다음 [Array # join] (http://www.ruby-doc.org/core-2.1.1/Array.html#method-i-join)을 사용하여 문자열을 다시 형성하십시오. –
@CarySwoveland 유키의 대답은 전혀 최선의 해결책이 아닙니다. 반복 밖의 카운터를 정의하는 것은 Ruby가 아닌 것입니다. 수동으로 증가시키는 것은 추악합니다. 훨씬 더 나은 해결책은'with_index (1)'을 사용하는 것입니다. – sawa
@CarySwovel 그리고 당신의 대답은 어디에 있습니까? – Ashe