У меня есть несколько корпоративных названий:
Bosna Auto
Sunsource – delisted 10/08/01
Healthgrades – delist. 11/09/02
Healthcare dead – 12/10/03
Healthco untl.
Некоторые имена содержат дату, но в ее представлении есть нерегулярные шаблоны.Некоторые имена не включают дату.Я хотел бы извлечь только даты для имен, которые содержат шаблон --/--/--
.Другая проблема заключается в том, что в дате иногда может отсутствовать ноль.
Я попробовал следующий код:
gen numend=1 if regexm(Name, "[0-9]$") == 1 /*Identify names that end with a number*/
replace numend=0 if numend==.
gen symbcont=1 if regexm(Name, "/") /*Identify names that contain a / symbol */
replace symbcont=0 if symbcont==.
gen date = substr(Name, + 5, .) if numend==1 & symbcont==1 /*Both criteria increase my chances to obtain a date as an output */
Этот код иногда извлекает дату и много других нежелательных символов, потому что код несовершенен.Я подозреваю, что может быть способ извлечь то, что я хочу, с помощью функции substr .
Есть предложения?