Regex, problem

S8
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam

Powiedzmy że mam takiego stringa

Kasia ma chomika, Ala Kowalska ma kota, a Ala Majewska ma kota, psa, papugę i kanarka.

daje takiego regexa
foreach (Match match in Regex.Matches(string, "Ala(.*)kota"))

to regex zwraca mi

Ala Kowalska ma kota, a Ala Majewska ma kota

zamiast

Ala Kowalska ma kota

i

Ala Majewska ma kota

Po prostu, nie rozumiem dlaczego regex nie bierze pierwszego "kota" po znalezieniu Kowalskiej, tylko kolejnego, tego po Majewskiej.

Patryk27
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
  • Postów: 13042
1

.* jest greedy, czyli będzie szukał do ostatniego możliwego dopasowania - spróbuj .*?.

S8
  • Rejestracja: dni
  • Ostatnio: dni
0

Dzięki.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.