2017-03-02 1 views
0

나는 만화 같은 문자열이 있습니다.C# WPF 문자열에서 별도의 문자 (뒤에서 시작)

www.asdsad.de/dsfdsf/sdfdsf=dsfdsfs?dsfsndfsajdn=sfdjasdhads= 것은 test.xlsx

난 단지 test.xlsx을 좀하고 싶습니다. 그래서 나는 뒤에서 문자열을 분리하고 싶다고 말하고 싶었습니다. 그가 처음으로 = 기호를 찾으면 나에게 문자열이 끝에서 = 기호로 공급된다는 것을 알았다.

가장 좋은 방법은 무엇입니까?

길이가 항상 다를 수 있기 때문에 안타깝게도 SubString을 어떻게 처리해야할지 모르겠다.

string source = "www.asdsad.de/dsfdsf/sdfdsf=dsfdsfs?dsfsndfsajdn=sfdjasdhads=test.xlsx"; 

// starting from the last '=' up to the end of the string 
string result = source.SubString(source.LastIndexOf("=") + 1); 
+0

yourString.Substring (yourString.LastIndexOf ('=') +1); – Evk

답변

2

예는, Substring 할 것 뒤에에서 첫 번째 =와 불필요한 시작하고 길이를 알 필요가 없습니다 것입니다 것을 알고있다 :

string source = "www.asdsad.de/dsfdsf/sdfdsf=dsfdsfs?dsfsndfsajdn=sfdjasdhads=test.xlsx"; 

Stack<char> sb = new Stack<char>(); 

for (var i = source.Length - 1; i > 0; i--) 
{ 
    if (source[i] == '=') 
    { 
     break; 
    } 

    sb.Push(source[i]); 
} 

var result = string.Concat(sb.ToArray()); 
1

또 다른 옵션 :하지만 결국 내가 필요