Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sas 删除最后一个逗号后的所有内容_Sas_Substr - Fatal编程技术网

Sas 删除最后一个逗号后的所有内容

Sas 删除最后一个逗号后的所有内容,sas,substr,Sas,Substr,我有一个地址字段,其地址类似于: 1 High Street, London, Uk, L1 6YR Flat 2, 35 Second Street, London,Greater London, L14 8FG 我想去掉最后一个逗号之后的所有内容,这样我就可以得到: 1 High Street, London, Uk Flat 2, 35 Second Street, London,Greater London 我试着这样做: DATA WANT; SET HAVE; AD

我有一个地址字段,其地址类似于:

1 High Street, London, Uk, L1 6YR 
Flat 2, 35 Second Street, London,Greater London, L14 8FG
我想去掉最后一个逗号之后的所有内容,这样我就可以得到:

   1 High Street, London, Uk
   Flat 2, 35 Second Street, London,Greater London
我试着这样做:

DATA WANT;
SET HAVE;
ADDRESS_NEW = SCAN(ADDRESS, -1, ",");
RUN;
但这只是返回邮政编码:

L1 6YR
L14 8FG

您可以使用
PRXCHANGE
修改符合所需条件的文本值。此示例使用regex模式
s/,[^,]*$/
将找到的结束部分替换为零

data have;
input address $80.;
datalines; 
1 High Street, London, Uk, L1 6YR 
Flat 2, 35 Second Street, London,Greater London, L14 8FG
Argy Bargy Lane
London, Uk
run;

data want;
  set have;
  address = prxchange("s/,[^,]*$//", 1, address);
run;

具有B选项的FindC

24   data _null_;
25      input address $80.;
26      put / address=;
27      l = findc(address,',','b');
28      if l then address = substrn(address,1,l-1);
29      put  (_all_)(=);
30      datalines;


address=1 High Street, London, Uk, L1 6YR
address=1 High Street, London, Uk l=26

address=Flat 2, 35 Second Street, London,Greater London, L14 8FG
address=Flat 2, 35 Second Street, London,Greater London l=48

address=Argy Bargy Lane
address=Argy Bargy Lane l=0

address=London, Uk
address=London l=7

还请分享您尝试过的任何代码,如果您遇到任何错误,请说明它们是什么。@Amir我已经添加了我认为应该尝试的内容。我不知道还有什么可以尝试的,所以我在这里发布了。