如何使用 sas 中的 prxchange 函数(附示例)
您可以使用 SAS 中的PRXCHANGE函数来替换字符串中的特定模式。
该函数使用以下基本语法:
PRXCHANGE(正则表达式、次数、来源)
金子:
- 正则表达式:指定要搜索的模式的正则表达式
- times : 查找并替换模式的替换次数(使用-1继续替换模式,直到到达源末尾)
- source :要搜索的变量的名称
以下示例展示了在实践中针对 SAS 中的以下数据集使用此函数的两种常见方法:
/*create dataset*/
data my_data;
input phrase $char40. ;
datalines ;
This is a cool name
That is a cool cool zebra
Oh hey there
Oh cool it's a cool-looking dog
Well now that is COOL
;
run ;
/*view dataset*/
proc print data =my_data;
示例 1:使用 PRXCHANGE 将字符串中的模式替换为新模式
以下代码演示如何使用PRXCHANGE函数创建一个名为new_phrase的新列,该列将短语列中每次出现的“cool”替换为“fun”:
/*create new dataset*/
data new_data;
set my_data;
new_phrase = prxchange ('s/cool/fun/i', -1, phrase);
run ;
/*view new dataset*/
proc print data = new_data;
请注意,每个“酷”的实例都已替换为“有趣”。
请注意,我们在正则表达式中使用s来指定我们要执行替换,并使用i来指定它不应该区分大小写。
示例 2:使用 PRXCHANGE 将字符串中的模式替换为空格
以下代码演示如何使用PRXCHANGE函数创建一个名为new_phrase的新列,该列将短语列中每次出现的“cool”替换为空格:
/*create new dataset*/
data new_data;
set my_data;
new_phrase = prxchange ('s/cool//i', -1, phrase);
run ;
/*view new dataset*/
proc print data = new_data;
请注意,每次出现的“cool”都被替换为空格。
其他资源
以下教程解释了如何在 SAS 中执行其他常见任务: