Det er en hurtig løsning, men løkken i dette lille program kan ihvertfald udføre opgaven:
LOG: 137 data _null_; 138 input string $; 139 numtal=0; 140 do i=1 to length(string); 141 charvar=substr(string,i,1); 142 if charvar ge '0' and charvar le '9' then numtal=numtal*10+input(charvar,1.);
143 end; 144 put 'Strengen: "' string '" indeholder tallet: ' numtal; 145 datalines;
Strengen: "abc15def " indeholder tallet: 15 Strengen: "abc15 " indeholder tallet: 15 Strengen: "15abc " indeholder tallet: 15 NOTE: DATA statement used: real time 0.01 seconds cpu time 0.01 seconds
149 run;
Du skal være opmærksom på, at hvis der optræder numeriske tegn adskilt af chartegn i din streng så vil det blive til eet langt tal. F.eks. bliver '23trut5' til 235.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.