Digamos que tengo una cadena de múltiples líneas como esto:¿Cómo hacer una búsqueda Regex de "coincidencia mínima" en C#?
STARTFRUIT
banana
ENDFRUIT
STARTFRUIT
avocado
ENDFRUIT
STARTVEGGIE
rhubarb
ENDVEGGIE
STARTFRUIT
lime
ENDFRUIT
Quiero buscar todas las frutas, no hay verduras. Trato esto:
MatchCollection myMatches = Regex.Matches(tbBlob.Text, "STARTFRUIT.*ENDFRUIT", RegexOptions.Singleline);
foreach (var myMatch in myMatches)
{
Forms.MessageBox.Show(String.Format("Match: {0}", myMatch), "Match", Forms.MessageBoxButtons.OK, Forms.MessageBoxIcon.Information);
}
El problema es, en mi lugar de devolver un conjunto de tres partidos, me da un gran partido que abarca el primer STARTFRUIT y el comienzo y el último ENDFRUIT al final. ¿Hay alguna manera de "minimalizar" la búsqueda de coincidencias? No veo ninguna ayuda en RegexOptions
.