DATA Step, Macro, Functions and more

count spaces between words

Accepted Solution Solved
Reply
Regular Contributor
Posts: 229
Accepted Solution

count spaces between words

How can i count the spaces in between the words data sp; input word $ 1-100; cards; as,bn hj nm lpo a b acf b c d asdf 29/12, SOUTH TUKOGANJ, run; output                  spacecount as,bn hj nm lpo            4 a b                        1 acf b c d                  3 asdf                      0 29/12, SOUTH TUKOGANJ,    2


Accepted Solutions
Solution
‎07-03-2012 05:42 AM
Super User
Posts: 9,662

Re: count spaces between words

data sp;
input word  $40.;
if countw(word,', ')=5 then flag=1; else flag=0;
cards;
as,bn hj nm lpo
a b
acf b c d
a,b,c,d,e
asdf
29/12, SOUTH TUKOGANJ,
a b,c d e
29/12,29/12,29/12,
;
run;

Ksharp

View solution in original post


All Replies
Regular Contributor
Posts: 229

Re: count spaces between words

How can i count the spaces in between the words data sp; input word $ 1-100; cards; as,bn hj nm lpo a b acf b c d asdf 29/12, SOUTH TUKOGANJ, run; output                  spacecount as,bn hj nm lpo            4 a b                        1 acf b c d                  3 asdf                      0 29/12, SOUTH TUKOGANJ,    2

Attachment
Super User
Posts: 9,662

Re: count spaces between words

data sp;
input word  $40.;
spacecount=countc(strip(word),' ');
cards;
as,bn hj nm lpo
a b
acf b c d
asdf
29/12, SOUTH TUKOGANJ,
;
run;

Ksharp

Message was edited by: xia keshan

Regular Contributor
Posts: 229

Re: count spaces between words

How can i count the spaces in between the words data sp; input word $ 1-100; cards; as,bn hj nm lpo a b acf b c d a,b,c,d,e asdf 29/12, SOUTH TUKOGANJ, a b,c d e 29/12,29/12,29/12, run; Actually i want is in the data if we are having 5 words separated by space or comma it should give one flag as 1 word                    flag as,bn hj nm lpo          1    a b                      0 acf b c d                1 a,b,c,d,e                1 asdf                    0            29/12, SOUTH TUKOGANJ,  0 a b,c d e                1 29/12,29/12,29/12,      0

Attachment
Solution
‎07-03-2012 05:42 AM
Super User
Posts: 9,662

Re: count spaces between words

data sp;
input word  $40.;
if countw(word,', ')=5 then flag=1; else flag=0;
cards;
as,bn hj nm lpo
a b
acf b c d
a,b,c,d,e
asdf
29/12, SOUTH TUKOGANJ,
a b,c d e
29/12,29/12,29/12,
;
run;

Ksharp

☑ This topic is SOLVED.

Need further help from the community? Please ask a new question.

Discussion stats
  • 4 replies
  • 346 views
  • 0 likes
  • 2 in conversation