2011-09-23 2 views
2

나는문자열 내에서 패턴을 검색하는 방법은 무엇입니까? "; 실패 감사"

login;windows 
db;sql 
audit;failure 

가 어떻게이 캐릭터 라인이 단어가 포함 된 경우 확인합니까 다음과 같은 출력을 포함하는 문자열을?

나는 다음과 같은 코드를 사용할 수 있지만 성공하지 :

currLine = sr.ReadToEnd(); 
string[] splited = Regex.Split(currLine, "~~~~~~~~~~~~~~"); 
case1 = splited[0]; 
string case1 = ""; 
string pattern1 = "audit;failure"; 
if (Regex.IsMatch(case1, pattern1)){ 
console.writeline("success"!); 
} 

내가 사전에 변수 case1 아닌 문자열 currLine thaks를 검색해야합니다! : D

+0

[string.Contains] (http://msdn.microsoft.com/en-us/library/dy85x1sa.aspx) 시도한 적이 있습니까? – Reniuz

답변

3

는 또한이 라인 string case1 = "";

if(case1.Contains("audit;failure")) 
    console.writeline("success"!); 
+0

oops가 완료되었습니다! 감사! –

+0

@ user866800 수정보기 – Kimtho6

0

나는 그냥 케이스 가구 1 문자열을 조정할 필요가 있다고 생각을 제거하는 것이 확인 ........

string case1 = ""; 
currLine = sr.ReadToEnd(); 
string[] splited = Regex.Split(currLine, "~~~~~~~~~~~~~~"); 
case1 = splited[0]; 
string pattern1 = "audit;failure"; 
if (Regex.IsMatch(case1, pattern1)){ 
console.writeline("success"!); 
} 
0

간단히 String.Contains()를 사용, 다음과 같은 코드를 사용하십시오.

if(sr.Contains("audit;failure") 
{ 

} 
0

한 가지 방법은 이것을 먼저 li로 분리하는 것입니다. nes.

string[] lines = sr.split (new string[]{ Environment.LineBreak}); 
foreach(string line in lines){ 
    string[] parts = line.split(new char[] {';'}); 
    if(parts[0] == "audit") 
     return parts[1]; 
} 
return "not set"; 

이 "감사"의 뒤에 서 있고 당신이 필요로하는 어떤 돌아갈 쉽게 적응할 무엇이든 반환합니다. 감사 선이 없으면 최종 반환이 트리거됩니다.

관련 문제