Пример контроля соответствия содержимого строки заданному формату (решение на основе синтаксиса)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | * (Вопрос) Допустим, имеется поле x с номерами SSN (social security numbers - номера социальных страховок). * Мне нужно увидеть в каких строках введённые номера записаны в неверном формате. * (Ответ) Автор: Raynald Levesque. Размещено в новостной группе 1.8.2002. * Пример данных. DATA LIST FIXED /ssn 1-11 (A). BEGIN DATA 123-45-6789 1234-5-6789 12e-45-6789 123&45-2222 END DATA. LIST. * Проверяем два символа 2 "-". COMPUTE test1=SUBSTR(ssn,4,1)="-" & SUBSTR(ssn,7,1)="-". * Проверяем, что остальные символы - цифры. COMPUTE test2=~MISSING(NUMBER(CONCAT(SUBSTR(ssn,1,3),SUBSTR(ssn,5,2),SUBSTR(ssn,8)),F9.0)). COUNT error=test1 test2 (0). EXECUTE. * Переменная error даёт число выявленных ошибок. |
Related pages
...