가능한 한 적은 코드로 Ruby 문제를 해결하려고합니다. :). 주어진 문자열이 다양한 수의 기호로 시작하는지 확인하고 싶습니다. 하나와 3 사이에 'a'라고 말하면됩니다. reg exp를 사용하면 간단합니다. string.match (\^a {1,3}. * \)를 쓸 수 있습니다. 그러나 그 다음에 정확한 a의 수에 따라 문자열을 변경해야합니다. 어떻게 그런의 경우 세 가지를 사용하지 않고이를 감지 할 수 있습니다 : 사전에문자열의 시작 부분에 주어진 기호의 정확한 숫자 찾기
do_string_manipulation1 if string.match(/^a.*/)
do_string_manupulation2 if string.match(/^aa.*/)
...
감사합니다 :)
이
감사합니다. '일치'가 무엇인지 알 수 없습니다. – mjekov
여기에 설명 된대로 MatchData 객체입니다. http://rubydoc.info/stdlib/core/1.9.3/MatchData –
또는 = ~ 연산자를 사용하고 전역 변수 $ 1 (이 경우 일반적으로 $ 1 .. $ n)입니다. 그 이점은 MatchData 객체를 만들지 않아도되므로 더 빠릅니다. –