Regexp. Получение всех элементов Enum - C#
Формулировка задачи:
Добрый день! Очень нужна помощь в составлении регулярного выражения по такому условию.
Есть ТЕКСТОВЫЙ ФАЙЛ вида
т.е. это обычный код Enum-a C#
Мне необходимо чтобы Regex вернул массив отдельных элементов enum и всё.
То есть eIndex1lala, eIndex2lulu, eIndex3aa, eIndex4rr, eIndex546d.
Их количество может быть различным (не обязательно 5).
Помогите пожалуйста! Заранее спасибо!
... enum eModeIndex { eIndex1lala = 1, eIndex2lulu, eIndex3aa, eIndex4rr, eIndex546d, } ...
Решение задачи: «Regexp. Получение всех элементов Enum»
textual
Листинг программы
string str = @"enum eModeIndex { eIndex1lala = 1, eIndex2lulu, eIndex3aa, eIndex4rr, eIndex546d, }"; string pattern = @"(?s)\benum\b.+\{(.+)\}"; // Значения перечислений (то, что в скобках). string enumeration = Regex.Match(str, pattern).Groups[1].Value; pattern = @"(?m)^\s*(\w+)"; List<string> values = new List<string>(); foreach (Match match in Regex.Matches(enumeration, pattern)) { // Разбиваем уже по значениям. values.Add(match.Groups[1].Value); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д