无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

SAS正則表達式之prxchange—一行代碼輸出多種結(jié)果

2022-02-16 09:44 作者:CDISC與SAS  | 我要投稿

最近碰到很多需要研究且很有意思的需求,比如如何在不建立數(shù)據(jù)集的情況下用一行%SYSFUNC代碼把visit衍生為vt和dd。

我用的是正則表達式,首先data step程序如下:


需要注意的僅有兩點

  1. 如何識別除1以外數(shù)字

  2. 如何按照不同需求得到所需結(jié)果。(如果字符串含有DAY 1,則Day 1。其余為Week xx。)

因為對于正則表達式,每個人的理解很可能不同,所以不便于他人維護,一般不推薦使用。盡管有時候為了應(yīng)對某些特定需求時很方便。

如何脫離data?step用%SYSFUNC顯示呢?


唯一需要注意的是我把/換成!,并且去掉‘‘。

  • 因為%sysfunc(prxchange())將所有參數(shù)視為文本(宏的緣故),所以不需要引號。

  • 正則表達式和%sysfunc的分隔符是不同的,如果不把/換成!,可以用%str(/)。

我在此處花了較多時間,原因是變量中的value末尾可能會帶有空格,而轉(zhuǎn)變?yōu)楹曜兞亢笫孜部崭穸紩サ?,這個時候尤其要考慮模糊匹配空格的問題。

此外加上%put效果也不同,有興趣可以自行嘗試。



總結(jié):????

????????為了顯示清楚,以上正則表達式用了實際數(shù)據(jù)的內(nèi)容,如果想要泛用,可以靈活使用Metacharacter。有興趣可以研究下,亦可延伸到其他情況。????????雖然實現(xiàn)方法很多,但是我司所用的工具如果不能用一行宏程序%sysfunc執(zhí)行,就需要新建數(shù)據(jù)集用常規(guī)方法解決問題。雖然我在研究非常規(guī)方法花的時間會比新建數(shù)據(jù)集方法多,但是收獲難以言表,一言難以蔽之。最明顯的結(jié)果就是以后其他項目用這一行代碼就可以實現(xiàn),快速便捷。


有重要程序圖片沒展示出來,有興趣可移步wx“gong zhong hao”: CDISC_SAS

SAS正則表達式之prxchange—一行代碼輸出多種結(jié)果的評論 (共 條)

分享到微博請遵守國家法律
九寨沟县| 东乡族自治县| 页游| 工布江达县| 杭锦旗| 屏南县| 滨州市| 寿光市| 靖江市| 嘉荫县| 佳木斯市| 榆树市| 深州市| 科技| 陇西县| 天等县| 通山县| 土默特左旗| 兴隆县| 谢通门县| 商都县| 墨竹工卡县| 新干县| 古交市| 彰化县| 阳春市| 海盐县| 玛曲县| 泊头市| 华宁县| 抚远县| 江川县| SHOW| 长子县| 万州区| 左云县| 万荣县| 襄樊市| 宕昌县| 苏尼特左旗| 华蓥市|