2011-12-28 16 views

Respuesta

14

string.Split va a hacer por esto, no hay necesidad de entrar en Substring:

var parts = "hello_my name_is_bob".Split('_'); 

string name = parts[1] // == "my name"; 

O, en un chiste (aunque me parece que esto sea menos legible):

string name = "hello_my name_is_bob".Split('_')[1]; 
+0

Bueno, al principio estaba usando comillas pero me estaba dando una excepción así que lo cambié a comillas simples y funcionó como un campeón. – MDL

+0

@MDL - Comillas dobles en cadenas de delimitación de C#, comillas simples que delimitan caracteres. – Oded

1

Si sabe Asegúrese de tener dos guiones bajos, use este código:

var pos = str.IndexOf('_'); 
var last = str.IndexOf('_', pos+1); 
var res = str.Substring(pos+1, last-pos-1); 

Esto le va a encantar l si el número de guiones bajos es menor que dos.

2
"hello_my name_is_bob".Split('_').Skip(1).First(); 
Cuestiones relacionadas