j**********e 发帖数: 442 | 1 比如ADVANCED TISSUE SCI -CL A
2002 TARGET TERM TR INC
ABERCROMBIE & FITCH CO
ACCENTURE LTD
AEGIS GROUP PLC
每一行最后一个单词如果是INC,CO, LTD, PLC
每一行最后两个单词如果是-CL A
就把尾巴上的无用单词删除
我想了想用SCAN但是没想明白怎么弄
请大牛指教!
多谢!! | l***a 发帖数: 12410 | 2 translate
【在 j**********e 的大作中提到】 : 比如ADVANCED TISSUE SCI -CL A : 2002 TARGET TERM TR INC : ABERCROMBIE & FITCH CO : ACCENTURE LTD : AEGIS GROUP PLC : 每一行最后一个单词如果是INC,CO, LTD, PLC : 每一行最后两个单词如果是-CL A : 就把尾巴上的无用单词删除 : 我想了想用SCAN但是没想明白怎么弄 : 请大牛指教!
| s******r 发帖数: 1524 | 3 xxx=scan(ddd,-1,' ');
if xxx in ('INC', 'CO','LTD','PLC') then do;
zzz=substr(ddd,1,length(ddd)-length(xxx)-1);
end;
【在 j**********e 的大作中提到】 : 比如ADVANCED TISSUE SCI -CL A : 2002 TARGET TERM TR INC : ABERCROMBIE & FITCH CO : ACCENTURE LTD : AEGIS GROUP PLC : 每一行最后一个单词如果是INC,CO, LTD, PLC : 每一行最后两个单词如果是-CL A : 就把尾巴上的无用单词删除 : 我想了想用SCAN但是没想明白怎么弄 : 请大牛指教!
| s******r 发帖数: 1524 | 4 It is risky.
How about SMITH COMPRESS CO.
【在 l***a 的大作中提到】 : translate
| j**********e 发帖数: 442 | 5 高手啊高手
崇拜啊崇拜
您给俺签个名吧
真是多谢了!!
( ^_^ )
【在 s******r 的大作中提到】 : xxx=scan(ddd,-1,' '); : if xxx in ('INC', 'CO','LTD','PLC') then do; : zzz=substr(ddd,1,length(ddd)-length(xxx)-1); : end;
| j**********e 发帖数: 442 | 6 大牛啊,如果有两种情况:
Case 1: 一行最后两个单词如果是-CL A就把尾巴上的无用单词删除.
Case 2: 一行最后一个单词如果是INC,CO, LTD, PLC就把尾巴上的无用单词删除
要一个program处理两个case,请问咋办捏?多谢!!!我模仿您加了一句another2=scan(other,-2,' ');
可是下面怎么办就不知道了。。。
another=scan(other,-1,' ');
another2=scan(other,-2,' ');
if another in ('INC', 'CO','LTD','PLC', 'CORP') or another2 in ('-CL A') then do;
another1=substr(other,1,length(other)-length(another)-1);
end;
if another1="" then another1=other;
run;
【在 s******r 的大作中提到】 : xxx=scan(ddd,-1,' '); : if xxx in ('INC', 'CO','LTD','PLC') then do; : zzz=substr(ddd,1,length(ddd)-length(xxx)-1); : end;
| s******r 发帖数: 1524 | 7 baozi
out_chr=input_chr;
temp=scan(input_chr,-1,' ');
if temp in ('INC', 'CO','LTD','PLC', 'CORP') then out_chr=substr(input_chr,1
,length(input_chr)-length(temp)-1);
else do;
temp=scan(input_chr,-1,'-');
if temp in ('CL A') then out_chr=substr(input_chr,1,length(input_chr)-
length(temp)-1);
end;
scan(other,-2,' ');
then do;
【在 j**********e 的大作中提到】 : 大牛啊,如果有两种情况: : Case 1: 一行最后两个单词如果是-CL A就把尾巴上的无用单词删除. : Case 2: 一行最后一个单词如果是INC,CO, LTD, PLC就把尾巴上的无用单词删除 : 要一个program处理两个case,请问咋办捏?多谢!!!我模仿您加了一句another2=scan(other,-2,' '); : 可是下面怎么办就不知道了。。。 : another=scan(other,-1,' '); : another2=scan(other,-2,' '); : if another in ('INC', 'CO','LTD','PLC', 'CORP') or another2 in ('-CL A') then do; : another1=substr(other,1,length(other)-length(another)-1); : end;
| j**********e 发帖数: 442 | 8 多谢大牛!我给您发包子。。。
,1
【在 s******r 的大作中提到】 : baozi : out_chr=input_chr; : temp=scan(input_chr,-1,' '); : if temp in ('INC', 'CO','LTD','PLC', 'CORP') then out_chr=substr(input_chr,1 : ,length(input_chr)-length(temp)-1); : else do; : temp=scan(input_chr,-1,'-'); : if temp in ('CL A') then out_chr=substr(input_chr,1,length(input_chr)- : length(temp)-1); : end;
|
|