Регулярки, запретить вложенность - C#
Формулировка задачи:
Добрый день.
Например, есть текст
string Text = "start первая регулярка end
start вторая end
start третья end
start четвёрая end
start пятая end";
и к ней регулярка:
В итоге, количество Совпадений окажется равным 1, так как регулярка берёт первый "start" и последний "end"
Но мне нужно чтобы находило 5 совпадений.
Как это сделать? Не нашёл параметра, запрещающего вложенные друг в друга регулярки.
string pattern = @"start(\s|\S)end; Regex newReg = new Regex(pattern); MatchCollection matches = newReg.Matches(Text);
Решение задачи: «Регулярки, запретить вложенность»
textual
Листинг программы
string Text = @"start первая регулярка end start вторая end start третья end start четвёрая end start пятая end"; string pattern = @"start(\s|\S)+?end"; Regex newReg = new Regex(pattern); MatchCollection matches = newReg.Matches(Text); foreach (Match m in matches) { Console.WriteLine(m.Value); Console.WriteLine("*******"); } Console.ReadKey();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д