【问题标题】:SAS: Is It Possible to Use a Variable/Observation in RegEx or PRXPARSESAS:是否可以在 RegEx 或 PRXPARSE 中使用变量/观察
【发布时间】:2016-11-03 00:58:31
【问题描述】:

我有一个包含 CITY 和 COUNTRY 的数据集。不幸的是,COUNTRY 也已连接到 CITY 字段中。它看起来像这样:

城市,国家 墨西哥城 墨西哥 墨西哥 普罗维登斯 美国 美国 伦敦 英国 英国

我需要从城市中删除国家名称。

我可以为每个国家写这样一行:

CITY = PRXCHANGE('S/MEXICO\s+$//', 1, CITY);

但这看起来很难看。

我希望能够使用从 PRXCHANGE 语句中的数据集中读取的 COUNTRY。像

CITY = PRXCHANGE('S/COUNTRY\s+$//', 1, CITY);

上面的方法不起作用,因为代码搜索的是文字“COUNTRY”而不是变量的值。

我尝试使用宏变量,但(如果我理解正确的话)它必须在之前的数据步骤中设置,这没有帮助。

在过去的几个小时里,我搜索了 SO 和 google,但未能提出任何解决方案。看来这应该是可行的。

任何建议将不胜感激!

【问题讨论】:

    标签: sas


    【解决方案1】:

    对我来说似乎很简单。您需要使用表达式作为第一个参数,而不是常量。

    CITY = PRXCHANGE(cats('S/',COUNTRY,'\s+$//'), 1, CITY);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-07
      • 1970-01-01
      相关资源
      最近更新 更多