2013-08-28 1 views
0

다음 문자열을 정규식으로 비교하고 싶습니다. 나는 서핑을 많이하지만 패턴을 얻을 수 없다. 상기 문자열정규식 비교

Full Name: 

ID Number: 

Mobile Number: 

에서

  string str = "Full Name: Atif Mahmood" 
        + "ID Number: 12345678901" 
        + "Mobile Number: +921234567890"; 

순서로 필요한 이들 상수 후의 문자열이 있어야한다.

+4

나는 아직도 그것을 얻을 해달라고; 선언 된'string str'을 인식하는 정규식을 원하십니까? – AAlferez

+2

설명을 위해 : 문자열의 이러한 부분을 추출하여 다른 문자열과 비교하고 싶습니까? – oddparity

+1

"비교"란 무엇을 의미합니까? 당신은 아무것도 비교하지 않는 것 같습니다. 'Full Name :','ID Number :'및'Mobile Number :'뒤에 텍스트를 추출하고 싶습니까? –

답변

4
var regex = "Full Name:(.*)ID Number:(.*)Mobile Number:(.*)"; 
var match = Regex.Match(string, regex); 

match.Groups [1]의 이름을 포함는 [2] 등 ID 번호를 포함한다 (그룹 [0]은 각각의 매치를 계산하는 전체 검색 그룹은 1에서 시작)

이것은 약간의 총알 교정이 필요할 것입니다.하지만 아이디어를 얻었습니까?

당신은 문자열 당신이 언급 패턴을 따르는 지 확인하려는 경우
2

,이 표현은 그것을 수행해야합니다

const string expression = "Full Name:.*ID Number:.*Mobile Number:.*"; 
bool correct = Regex.IsMatch(str, expression); 
+0

아마도 앵커를 추가하고 싶을 것입니다. 그렇지 않으면'Full Name : '앞에 아무 것도 허용되지 않습니다. –

+0

@ m.buettner - 일치 규칙에 따라 참입니다. 명세는 다소 모호합니다. – PHeiberg