2011-11-15 4 views
0

나는 velcro이라는 단어를 포함한 모든 줄에 대해 텍스트 파일을 검색했다. 지금은 그 라인의 내용을 인쇄 할,하지만 velcro줄의 일부를 인쇄하는 방법

에 따라 부분 만 내가

the purple monkey climbs the velcro cactus

가 어떻게 velcro 다음에 오는 모든 것을 인쇄 할 텍스트의 라인을 가지고 있다고 (찾고

c = /.*velcro.*/ 

if (line ==~ c){ 
println ... 
} 

답변

5

사용하십시오 captu : 일반적인 대답)

내가 함께 시작 귀하의 정규 표현식에서 고리 그룹 :

c = ~/.*velcro(.*)/ 

m = line =~ c 
if (m) { 
    println m[0][1] 
} 
+0

감사합니다. 여기서 무슨 일이 일어나고 있는지 설명해 주시겠습니까? 나는 주로'println m [0] [1]'줄에 관심이있다. 그러나 다른 것들도 신경 쓰지 않는다면 위대한 것이 될 것이다. – blaughli

+0

'[0]'은 첫 번째 (그리고 유일한) 출현의 일치를 반환한다. 문자열에서 정규식의. '[0] [0]'은 매치 된 전체 문자열입니다. '[0] [1]'은 첫 번째 캡처 그룹입니다. 사용자 가이드에 더 많은 정보가 있습니다 : http://groovy.codehaus.org/Regular+Expressions – ataylor

+0

은 캡쳐 그룹'(. *)'입니까? – blaughli

관련 문제