SAS String Routines
Contents
PrsSubStr
The PRSSUBSTR routine sets the character position and character length of a regular expression match into external variables. For example:
call prssubstr("/[Ff][Oo]{2}/", foobar, foo_start, foo_length); if (foo_start > 0) then foo = substr(foobar, foo_start, foo_length);
PrxNext
The PRXNEXT routine sets the character position and character length of a regular expression match into external variables, while obeying start and end character positions. This enables looping over a string for regular expression matches. For example:
routine_start = 1; routine_end = length(foobar); call prxnext("/[Ff][Oo]{2}/", routine_start, routine_end, foobar, foo_start, foo_length); do while (mystart > 0); mystring = substr(STRING, foo_start, foo_length); call prxnext("/[Ff][Oo]{2}/", routine_start, routine_end, foobar, foo_start, foo_length); end;