SAS Function COUNTW - 使用自定义分隔符时如何计算包含 NULL 值的单词?
SAS Function COUNTW - how to count word including NULL value when using customised delimiter?
尝试使用函数 COUNTW
获取字符串中 "words" 的数量。
但是这个字符串在逗号分隔时有时可能包含 NULL 值;
我找到了一些可以做到这一点的自定义宏,只是想知道我是否可以使用内置函数实现相同的功能,例如 COUNTW。
例如:
%put %wordcount('abc, , ,def,,56j,type',DLM=%str(,));
以上是自定义函数,returns7
%put %sysfunc(countw('abc, , ,def,,56j,type',%str(,)));
COUNTW
returns 6 因为它不计算 2 个逗号 (",") 之间的 NULL
很简单,看在线文档就可以了! COUNTW
有可选的修饰符,其中之一是 M
,它告诉函数将连续的定界符作为一个词包含,而不是空值。
下面的代码returns7,不是6。
%put %sysfunc(countw('abc, , ,def,,56j,type',%str(,),M));
尝试使用函数 COUNTW
获取字符串中 "words" 的数量。
但是这个字符串在逗号分隔时有时可能包含 NULL 值;
我找到了一些可以做到这一点的自定义宏,只是想知道我是否可以使用内置函数实现相同的功能,例如 COUNTW。
例如:
%put %wordcount('abc, , ,def,,56j,type',DLM=%str(,));
以上是自定义函数,returns7
%put %sysfunc(countw('abc, , ,def,,56j,type',%str(,)));
COUNTW
returns 6 因为它不计算 2 个逗号 (",") 之间的 NULL
很简单,看在线文档就可以了! COUNTW
有可选的修饰符,其中之一是 M
,它告诉函数将连续的定界符作为一个词包含,而不是空值。
下面的代码returns7,不是6。
%put %sysfunc(countw('abc, , ,def,,56j,type',%str(,),M));