2012-01-27 5 views
2

이 코드 : 정규 표현식에 대해 여러 그룹을 얻으려면 어떻게해야합니까?

string1 = "I will drill for a well in walla walla washington." 
/(w.ll) /.match(string1) 

will을 반환합니다.

willwell도 반환해야합니까?

확인 : 나는 루비에서 정규식에 대해 여러 그룹을 얻는 방법 http://rubular.com/r/48K8o5mzUX

?

+0

펄, 다른 언어를, 모든 일치의 대상 문자열을 찾기 위해 자신의 정규 표현식 파서를 알려주는'g' 플래그를 지원합니다. Ruby에는'g'가 없기 때문에 @lucapette가 추천하는'scan'을 사용합니다. –

+1

'String # match'는 보통 불리언 문맥에서 사용됩니다. –

답변

7

정상적으로 작동하며 예상되는 동작입니다. 아마 당신은 다음과 같은 scan를 사용하려면 :

1.9.2 (main):0 > string1.scan(/(w.ll)/) 
=> [["will"], ["well"], ["wall"], ["wall"]] 
+0

OP가 왜 올바른 대답인지보기 위해 몇 가지 예제 출력을 추가해보십시오. –

+0

질문을 수정했습니다. 제안 해 주셔서 감사합니다. – lucapette

+0

고마워, 나는 내가 생각하는 문자열 # 오해를 오해했다. – Federico

관련 문제