2014-11-28 19 views

Odpowiedz

10
string A = "Hello_World"; 
string str = A.Substring(A.IndexOf('_') + 1); 
0
var foo = str.Substring(str.IndexOf('_') + 1); 
1
string a = "Hello_World"; 
a = a.Substring(a.IndexOf("_")+1); 

spróbować? lub czy jest częścią A = w twoim A = Hello_World?

1

Czy spróbować to:

string input = "Hello_World" 
    string output = input.Substring(input.IndexOf('_') + 1); 
    output = World 

Można użyć metody IndexOf oraz metodę podciągiem.

Stwórz swoją funkcję jak ten

public string RemoveCharactersBeforeUnderscore(string s) 
{ 
string splitted=s.Split('_'); 
return splitted[splitted.Length-1] 
} 

użyć tej funkcji jak ten

string output = RemoveCharactersBeforeUnderscore("Hello_World") 
output = World 
0
string orgStr = "Hello_World"; 
string newStr = orgStr.Substring(orgStr.IndexOf('_') + 1); 
1

Już otrzymaliśmy a perfectly fine answer. Jeśli są chętni, aby pójść o krok dalej, można owinąć górę a.SubString(a.IndexOf('_') + 1) w solidnej i elastycznej metodę rozszerzenia:

public static string TrimStartUpToAndIncluding(this string str, char ch) 
{ 
    if (str == null) throw new ArgumentNullException("str"); 
    int pos = str.IndexOf(ch); 
    if (pos >= 0) 
    { 
     return str.Substring(pos + 1); 
    } 
    else // the given character does not occur in the string 
    { 
     return str; // there is nothing to trim; alternatively, return `string.Empty` 
    } 
} 

których należałoby użyć tak:

"Hello_World".TrimStartUpToAndIncluding('_') == "World"