SAS Как извлечь одну строку перед конкретной строкой? - PullRequest
0 голосов
/ 10 мая 2019

Я пытаюсь извлечь число n перед строкой:

DEMO_DASHBOARD_n_START_TIME

Как мне извлечь n?

Я пытался, но ничего не получалось:

  id = scan(name, -1, "_START_TIME");
  id = substr(name, index(name,"_START_TIME") - 1);

Число n должно быть перед _START_TIME, а не просто цифрой в строке.Поэтому не следует использовать сжатие () для извлечения только цифр.

Спасибо за любые входные данные!

1 Ответ

2 голосов
/ 11 мая 2019

Итак, пришло время для регулярного выражения.

Pat = prxparse('/(\d+)_START_TIME/');
if prxmatch(Pat,) then ID = prxposn(Pat,1,Name);
...