Precisa obter uma string depois de uma “palavra” em uma string em c #

Eu estou tendo uma string em c # para o qual eu tenho que encontrar uma palavra específica “código” na seqüência de caracteres e tem que obter a seqüência restante após a palavra “código”.

A corda é

“Descrição do erro, código : -1″

então eu tenho que encontrar o código da palavra na seqüência acima e eu tenho que pegar o código de erro. Eu vi o regex mas agora claramente entendido. Existe alguma maneira simples?

 string toBeSearched = "code : "; string code = myString.Substring(myString.IndexOf(toBeSearched) + toBeSearched.Length); 

Algo assim?

Talvez você deva lidar com o caso de code : ausente code :

 string toBeSearched = "code : "; int ix = myString.IndexOf(toBeSearched); if (ix != -1) { string code = myString.Substring(ix + toBeSearched.Length); // do something here } 
 var code = myString.Split(new [] {"code"}, StringSplitOptions.None)[1]; // code = " : -1" 

Você pode ajustar a string para dividir – se você usar "code : " , o segundo membro da matriz retornada ( [1] ) conterá "-1" , usando o seu exemplo.

Maneira mais simples (se a sua única palavra-chave for “código”) pode ser:

 string ErrorCode = yourString.Split(new string[]{"code"}, StringSplitOptions.None).Last(); 

use a function indexOf()

 string s = "Error description, code : -1"; int index = s.indexOf("code"); if(index != -1) { //DO YOUR LOGIC string errorCode = s.Substring(index+4); } 
 string originalSting = "This is my string"; string texttobesearched = "my"; string dataAfterTextTobeSearch= finalCommand.Split(new string[] { texttobesearched }, StringSplitOptions.None).Last(); if(dataAfterTextobeSearch!=originalSting) { //your action here if data is found } else { //action if the data being searched was not found }