2009-05-07 2 views
0

웹 서비스 응답에서 문자열에 지정된 해시를 정규식 변환하려고합니다. 주어진 응답 형식으로되어 있습니다 :간단한 C# Regex

 
Write this code down, this is your id for the following tasks: P+3zLI8x1AokfbZ1jXat9g== 

You will need to enter the code in each of the following steps. 

The next task is somewhat simpler, and demonstrates the process of validating data input to a service. 

The next method that has been exposed for you is a method called 'girls'. 
This method takes five parameters, the first four of which are the first names of the members of Girls Aloud, in alphabetical order (a quick search on wikipedia will help out here), and the fifth parameter is your unique id code. 

Create a windows application to send the correct data and the response will be a string with your next set of instructions.` 

내가 관심이 해시는 "ID", ID 동부 표준시, "P+3zLI8x1AokfbZ1jXat9g=="입니다. "^:\\w*=$"과 같은 정규식을 사용하려고했지만 일치하지 않았습니다 ...

누구든지 나에게 손을 줄 수 있습니까?

는 (사람들은 intrerested을 위해 그리고, 그것은 비 CS 과정에서 간단한 웹 서비스 예제에서이다, 나는 단지 그것을 아래로 작성하는 대신 정규식을 통해 해시를 추출하기 위해 노력하고있어.)

+0

당신은 숙제를해야합니다! 배우십시오! –

+0

안녕하세요! 그것은 실용적인 클래스입니다! 나는 이미 우리에게 요청한 작업을 마쳤다. 나는 더 나아가서 해시를 얻음으로써 전체 프로세스를 자동화하려고 시도하고있다! –

답변

1

처럼 분할

이 말에 모든 전체 단어 일치

줄은 '=='로 끝납니다.

RegexStudio 친구 :)

+0

나는 그것이 단순하기 때문에 가장 답을 선호합니다. 좋은 분! –

+0

당신은 \ S + == 그렇지 않으면 문맥이 주어지는 평범한 "=="과 쉽게 일치 할 수 있습니다. – patjbs

1

[A-ZA-Z + 0-9] {22} ==

해시가 항상 특정 길이이며, 제한된 문자 세트 (구두점)를 사용하기 때문에 작업을해야한다.

당신이 게시 한 정규식의 가장 큰 문제점은 해시가 해당 행에 인 경우 표현식이 일치하도록 줄의 앞과 끝에 그것을 고정하려고했기 때문입니다. 당신은 정말로 그렇게 할 필요가 없습니다. 정말로 원하면 행에이 표현식을 고정 할 수 있지만 일치하지 않아도됩니다.

+0

그것은 md5 해시입니다. 항상 "=="로 끝나는가? 나는 여러 가지 해시를 받았는데 그렇게하는 것처럼 보입니다 ... –

+0

그것은 복잡하지만 일반적으로 '예'라고 가정 할 수 있습니다. –

1

아마 == * \ S이 텍스트의 첫 줄을 읽어보세요, 다음이

string hash = stream.ReadLine().Split(":")[1]; 
1
tasks:\s(.+)\W 
+1

이전에 (흰색) 공간이 누락되었습니다. – steamer25

0
string resultString = null; 
try { 
    resultString = Regex.Match(subjectString, "^Write this code down, this is your id for the following tasks: (?<ID>.+)$", RegexOptions.Multiline).Groups["ID"].Value; 
} catch (ArgumentException ex) { 
    // Syntax error in the regular expression 
}