2011-01-26 4 views
2

그루비 정기 일치하는 모든 나는이 정규식이

regex = ~/\"([^"]*)\"/ 

그래서 필자는 지금은 그러나

regex.matcher(options).matches() => false 
을하고 문자열

options = 'a:2:{s:10:"Print Type";s:8:"New Book";s:8:"Template";s:9:"See Notes";}' 

다음 한 따옴표 사이의 모든 텍스트를 찾고

이 사실이 아니어야하며 4 개의 그룹이 없어야합니다.

답변

3

matcher() 메서드는 전체 문자열을 실패한 정규식과 일치 시키려고 시도합니다.

자세한 내용은 this tutorial을 참조하십시오.

나는 그루비를 모르는,하지만 다음과 같은 작업을해야 것 같습니다 :

def mymatch = 'a:2:{s:10:"Print Type";s:8:"New Book";s:8:"Template";s:9:"See Notes";}' =~ /"([^"]*)"/ 

지금 mymatch.each { println it[1] } 모든 경기를 인쇄해야합니다.

+0

'mymatch.each {println it [1]} '은 일치하는 내용 만 출력합니다 :-) –

+0

@tim_yates : 고마워요! –

관련 문제