Мне нужно разбить строку строки в разные столбцы на excel. Вот те, которые я получаю.Как разбить строку на известные слова
Входной:
- 37006 II Семестр жилец Диплом по клиническим исследованиям и проверке клинических данных, июль/август 2012 года. Регулярные мероприятия по вопросам фармации Время: 3 часа Макс. Метки: 100
Выходные: CSV запись со структурой (код, Сем/год, тема, курс, экзамен дата, время, Marks)
- 37006, II семестр, жилец Диплом по клиническим исследованиям и управлению клиническими данными, Фармакологическое регулирование, июль/август 2012 года, 3 часа, 100
У меня есть данные в разных наборах, которые строят выше строк. Например:
Грамматика (это массив/словарь):
- семестры [I, II, III, IV, V, VI, VII, VIII, IX, X, 1,2 , 3,4,5,6,7,8,9,10]
- Годы [I, II, III, IV, V, VI, VII, VIII, IX, X, 1,2,3,4, 5,6,7,8,9,10]
- Предметы [PG Диплом в области клинических исследований и управления клиническими данными, LL.B]
- Курсы [Фармакологическое право, юриспруденция]
- ExamDates [Июль/Август 2012, Январь/ФБ. 2013]
- Время [3 часа]
- MaxMarks [30,40,50,60,70,80,90,100]
FYI,
- Я не уверен, что может использовать любые разделители, чтобы разбить его как очень непредсказуемый или надежный.
- Я не уверен, что текст будет находиться в таком же порядке, в каждой строке или нет фиксированной длины или автомобили или слова
Моего предположения, прочитать слово в слове и пытаться соответствовать любому слову в любом массиве что у меня есть. Если его совпадение с любым словом, затем классифицируйте это слово в категорию падения и добавьте в соответствующую колонку в excel.
Здесь я знаю, как обрабатывать данные и все, кроме того, что оптимизировано/наилучшим образом для понимать каждое слово подпадает под категорию.
Есть ли какой-либо эксперт по лексическому анализу, который может поделиться некоторыми мыслями по этому поводу?
здесь данные не одно или 10 строк. его около 2000 строк и грамматика слишком велики, что создает все 200 строк. как я могу использовать регулярное выражение для этого огромного соответствия данных. –
Вы можете попробовать применить одно регулярное выражение (содержащее 7 лексем, которые вы выделили) для каждой строки. – Xardas
'^/d + \ s ((/ d {1,2} | X | IX | VIII | VII | VI | V | IV | III | II | II) \ sSemester) \ s ... $' является примером для первый лексем: семестр. – Xardas