String SAS不识别字符串变量值

String SAS不识别字符串变量值,string,sas,String,Sas,我正在编写一些if-then语句来将字符串变量值从一个值更改为另一个值,但它无法识别其中的一些值。我尝试使用trim函数删除前导空格和尾随空格,但仍然不起作用。你知道为什么会这样吗 如果proddesc=“CCCC-CCCC-CCC”,则prod=“th_CCC_CCC” trim()仅删除尾随空格strip()删除前导空格和尾随空格 if strip(proddesc) ="CCCC -CCCC CC-CCC" then prod = "th_ccc_ccc"; 如果这不起作用,请在问题中添

我正在编写一些if-then语句来将字符串变量值从一个值更改为另一个值,但它无法识别其中的一些值。我尝试使用trim函数删除前导空格和尾随空格,但仍然不起作用。你知道为什么会这样吗

如果proddesc=“CCCC-CCCC-CCC”,则prod=“th_CCC_CCC”

trim()
仅删除尾随空格
strip()
删除前导空格和尾随空格

if strip(proddesc) ="CCCC -CCCC CC-CCC" then prod = "th_ccc_ccc";

如果这不起作用,请在问题中添加显示问题的数据。

您可能需要在prod上设置长度。以下操作有效,因此,如果您仍然存在问题,则需要提供更多信息:

data test;
 length prod $10;
 proddesc = "CCCC -CCCC CC-CCC"; 
 prod = "x";
 if proddesc ="CCCC -CCCC CC-CCC" then prod = "th_ccc_ccc";
run;

在这方面很难帮助你,没有一个例子表明它不能正常工作。