Подстановочный знак соответствует шагу DATA, если операторы могут быть сделаны с помощью функции PRXMATCH
.PRX означает регулярное выражение Perl.
PRXMATCH (
шаблон регулярного выражения ,
текст для оценки )
Функция PRXMATCH документация
Пример данных
data have; input
patientID diagnosis_code $ cancer age gender $; datalines;
1 250.0 0 65 M
1 250.00 1 65 M
2 250.01 1 23 M
2 250.02 0 23 M
3 250.11 0 50 F
3 250.12 0 50 F
4. 513.01. 1 34 M
run;
Пример кода
data want;
set have;
t2dm = prxmatch('/^250\.\d*0$/', trim(diagnosis_code)) > 0;
t1dm = prxmatch('/^250\.\d*1$/', trim(diagnosis_code)) > 0;
run;
Примечания к коду примера
/
ограничивает шаблон регулярного выражения ^
совпадение в начале 250
совпадение 250 \.
совпадение с фактическим периодом \d
соответствует цифре \d*
соответствует нулю или более цифрам
0
1
соответствует 0 или 1 0$
1$
соответствует 0 или 1 в конце
trim()
обрезать текст для оценки, чтобы совпадение в конце работало > 0
amatch вернет позицию p в тексте или 0, если совпадения нет, p > 0 логически оценивается как 0 или 1 и будет присвоено переменной флага