SAS中的正则表达式匹配

时间:2012-04-05 17:12:43

标签: regex perl sas

我的观察结果有1美元符号($),观察结果有2美元符号($)。我想为每种观察类型分配不同的值。看起来应该是这样的:

“$ 200 $ 300”被分配1。 “200美元”被分配2。

我尝试过整天玩Perl通配符,但没有运气。

感谢。

2 个答案:

答案 0 :(得分:6)

SAS countc()函数如何计算'$'出现的次数?

%put %sysfunc(countc($300 $400,'$'));  /* returns 2 */
%put %sysfunc(countc($300 ,'$'));      /* returns 1 */

答案 1 :(得分:3)

您可以使用goatse operator

my @str = ( '$200 $300', '$200' );

foreach my $str ( @str ) {
    my $count =()= $str =~ /\$/g;
    print "count for $str is $count\n";
}

然后,根据$count的内容,相应地指定值。