Sas で find 関数を使用する方法 (例あり)


SAS のFIND関数を使用すると、文字列内で最初に出現する部分文字列の位置を見つけることができます。

この機能を使用する最も一般的な 2 つの方法を次に示します。

方法 1: 文字列が最初に出現する位置を見つける

 data new_data;
set original_data;
first_occurrence = find (variable_name, " string ");
run;

方法 2: 文字列が最初に出現する位置を検索します (大文字と小文字は無視します)。

 data new_data;
    set original_data;
    first_occurrence = find (variable_name, " string ", " i ");
run ;

「i」引数は、部分文字列を検索するときに大文字と小文字を区別しないように SAS に指示します。

次の例は、SAS の次のデータセットで各メソッドを使用する方法を示しています。

 /*create dataset*/
data original_data;
    input sentence $1-25;
    datalines ;
The fox ran fast
That is a quick FOX
This fox is a slow fox
The zebra is cool
;
run ;

/*view dataset*/
proc print data = original_data; 

例 1:文字列が最初に出現する位置を検索する

次のコードは、各文字列内で最初に出現する「fox」の位置を見つける方法を示しています。

 data new_data;
    set original_data;
    first_fox = find (phrase, " fox ");
run ; 

結果を解釈する方法は次のとおりです。

  • キツネは速く走った (最初に出現したのは位置5 )
  • これは高速 FOX です (小文字の文字列「fox」は表示されません)
  • このキツネは遅いキツネです (最初に出現したのは位置6です)
  • シマウマかっこいい(「キツネ」の文字列は出てこない)

例 2:文字列が最初に出現する位置を検索します (大文字と小文字は無視します)。

次のコードは、各文字列内で大文字と小文字を区別せずに最初に出現する「fox」の位置を検索する方法を示しています。

 data new_data;
    set original_data;
    first_fox = find (phrase, " fox ", " i ");
run ; 

結果を解釈する方法は次のとおりです。

  • キツネは速く走った (最初に出現したのは位置5 )
  • これは簡単なF OX です (最初に出現する「fox」は17番目にあります)
  • このキツネは遅いキツネです (最初に出現したのは位置6です)
  • シマウマかっこいい(「キツネ」の文字列は出てこない)

追加リソース

次のチュートリアルでは、SAS で他の一般的なタスクを実行する方法について説明します。

SAS でデータを正規化する方法
SAS で文字列内の文字を置換する方法
SAS で欠損値をゼロに置き換える方法
SAS で重複を削除する方法

コメントを追加する

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