Hi I want to see if text values are correctly separated by a comma then space. However some values can start with SUPP__ and QNAM can contain a period (.) e.g. SUPPAE.START and QNAM.STOP.
For example these values are correctly arranged with a comma and single space:
SUBJID, SEQUENCE, SUPPAE.START, QNAM.STOP
SUBJID, START, SUPPCM.STOP
SUBJID, ID, QNAM.START
These are not correctly arranged and need to be detected:
SUBJID. SEQUENCE, SUPPAE.START. QNAM.STOP
SUBJID,START*SUPPCM.STOP
START; STOP;
START. STOP
I think we can use prxchange or similar prx funciton.
Thanks
In other words, detect a space preceded by something other than comma, or a comma without following space?
if prxmatch('/[^,] |,\S/', trim(VAR));
In other words, detect a space preceded by something other than comma, or a comma without following space?
if prxmatch('/[^,] |,\S/', trim(VAR));
Hi Chris, the string can contain any characters potentially and its possible no space was used e.g. WORD1,WORD2 or WORD1.WORD2.
These 2 examples should be treated as expected:
The first is invalid, the second is valid.
Catch the best of SAS Innovate 2025 — anytime, anywhere. Stream powerful keynotes, real-world demos, and game-changing insights from the world’s leading data and AI minds.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.