Я разработал решение на случай, если кто-нибудь попытается сделать что-то подобное.
Выберите наборы с помощью
(^(?'number'^\d{0,4})\t(.*$)(\n\k<number>(.*))*)
Разница между первоначально опубликованным кодом составляет ()
вокругвесь код
Замените на \1\n
, чтобы создать наборы в следующем формате:
29 Continuous
29 Horizontal mattress
29 Interrupted
29 Vertical mattress
29 No use sutures because the immediate denture acts as a stint
30 1-5 years
30 6-10 years
30 11-15 years
30 16-20 years
30 21-25 years
31 Artery
32 Vitality of the tooth pulp
32 Age of the patient
32 Absence of root resorption
Выберите отдельные строки с помощью
(^(?'number'^\d{0,4})\t(.*$))\n
Замените на \3
(два пробела после \ 3) для создания
Continuous Horizontal mattress Interrupted Vertical mattress No use sutures because the immediate denture acts as a stint
1-5 years 6-10 years 11-15 years 16-20 years 21-25 years
Artery
Vitality of the tooth pulp Age of the patient Absence of root resorption
Я не знаю, как добавить вопрос # обратно с помощью регулярных выражений, но его можно легко импортировать в Excel, чтобы сделать это при необходимости.