Ctrl+F Ctrl+R SAS サクラエディタ

【SAS】SASで良く使うテクニック。その12「Ctrl+F」「Ctrl+R」~特定の文字列を検索、置換~【サクラエディタ】

投稿日:

今回はSASで良く使うテクニックということで、特定の文字列を検索、置換したい時は、「Ctrl+F」「Ctrl+R」が役に立つ理由を解説していきます。

以下のようにテーブルがあったとします。(参考:【SAS】”nは本来使用できない文字を使用可能にする。 | ビジネスイッチ (how-to-business.com)



/* id4 */
data data1;
  id1=1111; id2=1111; id3=1111; id4=1111;
    output;
run;

data1からid1,id2,id3,id4を選択して抽出するSQL文が以下のようにあったとします。(参考:【SAS】”nは本来使用できない文字を使用可能にする。 | ビジネスイッチ (how-to-business.com)



proc sql;
   create table data2 AS
   select  t1.id1,
           t1.id2,
           t1.id3,
           t1.id4
   from data1 t1;
quit ;

この上記のSQL文を以下のSAS文にリメイクしたいとします。(format文:【SAS】FORMATはカラムの出力順を制御できる | ビジネスイッチ (how-to-business.com)


data data2;
  format id1
         id2
         id3
         id4;
set data1;
run;

このとき、「t1.」「,」はSQLでは必要でしたが、SASでは不要なため、消したいです。

そこで、一つ一つ消すのも手段の一つですが、もっとスマートなやり方があります。

ここで検索、置換を使う訳です。

BeforeのSQL文をサクラエディタに貼り付けます。

「Ctrl+F」を押し、条件に「t1.」を入力後、該当行マークを押下します。

すると、「t1.」の部分が黄色くマーキングされます。

まずは、この検索機能で確認し、一括置換をしても問題が無いか確認をします。

問題が無ければ、今度は「Ctrl+R」を押下して置換機能を使います。

置換前に「t1.」を入力した状態で「すべて置換」を押下します。(文字列を消したいので、置換後は空欄にしておきます。)

すると、以下のように「t1.」が無くなります。

同様に「,」も消し去れば、「t1.」「,」は無くなるので、

後は必要な箇所を書き換えれば、SAS文の出来上がり。

-Ctrl+F, Ctrl+R, SAS, サクラエディタ

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

【SAS】SASで良く使うテクニック。その4 「参照元のトレース」~データセットの差分がある箇所を探すのに便利~【Excel】

今回はSASで良く使うテクニックということで、データセットの差分がある箇所を探すときは「参照元のトレース」が役に立つ理由を解説していきます。 (参考:【SAS】SASで良く使うテクニック。その1 Ex …

【SAS】YYYY-MM表記にする方法【SUBSTR】【||】

今回はYYYYMMDD表記の年月日をYYYY-MM表記にしたいと思います。 結論:SUBSTRと||を使います。 (SUBSTR:【SAS】SUBSTR関数は文字列から指定した文字数分切り取る。 | …

【SAS】IFステートメントは処理を分岐できる。その1

今回はSASのif文について解説していきたいと思います。 【IF文の関連記事】 (明示的、暗黙的OUTPUT:【SAS】OUTPUTとDELETEの「明示的な使い方」「暗黙的な使い方」 | ビジネスイ …

【SAS】COMPRESS関数は文字列の空白を削除し、詰める。(COMPRESS関数 その1)

今回はCOMPRESS関数について解説します。 /* compress */ data data1; Id1=1111; Char1=”AA AA”; output; Id1=2222; Char1= …

【SAS】列名と列ラベルの表示を切り替える方法【LABEL】

今回はデータセットにおける列名と列ラベルの表示を切り替える方法を解説します。 /* label */ data data1; attrib Id1 length = 8 label = “Id1111 …