@ excepción de la respuesta de Prashant, las respuestas anteriores han sido contestadas incorrectamente. ¿Dónde está la característica "reemplazar" de la respuesta? El OP preguntó: "Después de eso, me gustaría crear una nueva cadena entre eso y otra cosa".
Basado en la excelente respuesta de @ Oscar, he ampliado su función para que sea una función "Search And Replace"
en uno.
Creo que la respuesta de @Prashant debería haber sido la respuesta aceptada por el OP, ya que reemplaza.
De todos modos, he llamado a mi variante - ReplaceBetween()
.
public static string ReplaceBetween(string strSource, string strStart, string strEnd, string strReplace)
{
int Start, End;
if (strSource.Contains(strStart) && strSource.Contains(strEnd))
{
Start = strSource.IndexOf(strStart, 0) + strStart.Length;
End = strSource.IndexOf(strEnd, Start);
string strToReplace = strSource.Substring(Start, End - Start);
string newString = strSource.Concat(Start,strReplace,End - Start);
return newString;
}
else
{
return string.Empty;
}
}
Look at [** 'IndexOf' **] (http://msdn.microsoft.com/en-us/library/k8b1470s.aspx) y [** 'Substring' **] (http://msdn.microsoft.com/en-us/library/aka44szs.aspx). – mellamokb
posible duplicado de [Buscar palabra (s) entre dos valores en una cadena] (http: // stackoverflow.com/questions/8082103/find-words-between-two-values-in-a-string) –
Esta es una función de Buscar y Reemplazar en la que busca. No es solo un hallazgo, que IndexOf() o string.Contains() podrían manejar fácilmente. – Fandango68