2014-12-09 5 views
0

텍스트가 3 개 그룹 문자열을 찾아야합니다. 내가 표현하려고 : \r?\n\r?\n\r?[0-9A-Z].*\d{7}을하지만 대신 3 나는 00170784, HEDINV, 00173575을 강조한다 단지 2 문자열을 찾을 내가받을 만 00170784과 00173575 이 텍스트입니다 :그룹에 대한 정규 표현

BUY 
USM4 
200 contracts 
04/28/2014 15:50 
00170784 
56 
contracts 
HEDINV 
64 
contracts 
00173575 
80 
contracts 
At average price of USD 134.375 

SELL 
USM4 
200 contracts 
04/28/2014 15:50 
00170784 
56 
contracts 
HEDINV 
64 
contracts 
00173575 
80 
contracts 
At average price of USD 134.5938 
+0

왜이 'HEDINV'를 강조 표시 하시겠습니까? 정규 표현식에서'\ d {7}'이 일치하지 않습니다. –

+1

어떤 언어를 사용하고 있습니까? 또한, 나는 당신이 찾고있는 것과 일치하는 당신의 정규식을 얻을 수 없다 ... 당신이 명시 적으로 당신이 캡처하고 싶었던 것을 명시한다면 도움이 될 것이다. 특히 더 효율적인 정규 표현식이 사용된다면 ... –

+0

우리는 할 수있다. 우리는 당신이 무엇을 원하는지, 왜 그 이유를 모르는 경우 도움을줍니다. 우리가 알고있는 것은 여러분이 '00170784','HEDINV','00173575'와 일치하기를 바랍니다. 그럼, 여기에 여러분은 다음과 같이갑니다 :'00170784 | HEDINV | 00173575'. –

답변

0

내가 대신를 사용하는 것이 좋습니다 수는 ?

^\d{8}$|^[A-Z]{6}$ 

두 개의 캡처 그룹이 있습니다. 하나는 전체 라인에 대한 8 자리 시퀀스입니다. 다른 하나는 전체 줄에 대해 6 자의 연속입니다. 그 모든 개행 일치를 사용하는 특별한 이유가 없다면, 찾고있는 것을 잡아라.

+0

고마워요. 이것은 더 좋다 – Natan

+0

쿨, @Natan. 이것이 당신을 위해 일했다면, 호의를 베풀고 그 옆에있는 체크 마크로 허용 된대로 대답을 표시하십시오 :) –

관련 문제