区切り文字を使用して各項目を区切り、区切り文字を含む文字列に引用符を追加して文字値または数値を連結します。
カテゴリ: | 文字 |
文字定数、変数または式を指定します。これらの空白以外の各文字でCATQ関数のアクションを変更します。空白は無視されます。次の文字を修飾子として使用できます。
CATQは、文字列に引用符を追加するときに一重引用符を使用します。
CATQは、文字列に引用符を追加するときに二重引用符を使用します。
すべての項目引数に引用符を追加します。
SまたはT修飾子で削除されていない先頭や末尾の空白がある項目引数に引用符を追加します。
区切り文字としてカンマを使用します。
指定の区切り文字引数があることを示します。
区切り文字として水平タブを使用します。
最初の項目引数以降の各項目引数に区切り文字を挿入します。M修飾子を使用しない場合、CATQは他の修飾子で指定された処理の後に長さがゼロの項目引数の区切り文字を挿入しません。M修飾子を使用すると、区切り文字が結果の最初または最後に表示される可能性があります。また、複数の連続する区切り文字が結果に表示される場合もあります。
値がSAS名の通常の構文規則に準拠していない場合に項目引数を名前リテラルに変換します。名前リテラルは、引用符に囲まれた空白のない文字列で、後に文字"N"が続きます。SASステートメントで名前リテラルを使用するには、SASオプションVALIDVARNAME=ANYを指定する必要があります。
すでに引用符が含まれている項目引数に引用符を追加します。
後で処理される引数の先頭および末尾の空白を削除します。
後で処理される引数の末尾の空白を取り除きます。
値に印刷不可文字が含まれている場合に項目引数を16進リテラルに変換します。
ヒント | modifierが定数の場合、引用符で囲みます。modifierを変数名または式として表すこともできます。 |
A、B、N、Q、S、T、X修飾子は、CATQ関数内部で動作します。項目引数が変数の場合、結果がその変数に割り当てられていない限り、その変数の値はCATQによって変更されません。 |
文字または数値の、定数、変数または式を指定します。itemが数値の場合、その値はBESTw.出力形式を使用して文字列に変換されます。この場合、先頭の空白は削除され、ログにメモは記録されません。
options ls=110; data _null_; result1=CATQ(' ', 'noblanks', 'one blank', 12345, ' lots of blanks '); result2=CATQ('CS', 'Period (.) ', 'Ampersand (&) ', 'Comma (,) ', 'Double quotation marks (") ', ' Leading Blanks'); result3=CATQ('BCQT', 'Period (.) ', 'Ampersand (&) ', 'Comma (,) ', 'Double quotation marks (") ', ' Leading Blanks'); result4=CATQ('ADT', '#=#', 'Period (.) ', 'Ampersand (&) ', 'Comma (,) ', 'Double quotation marks (") ', ' Leading Blanks'); result5=CATQ('N', 'ABC_123 ', '123 ', 'ABC 123'); put (result1-result5) (=/); run;
result1=noblanks "one blank" 12345 " lots of blanks " result2=Period (.),Ampersand (&),"Comma (,)",Double quotation marks ("),Leading Blanks result3=Period (.),Ampersand (&),"Comma (,)",'Double quotation marks (")'," Leading Blanks" result4="Period (.)"#=#'Ampersand (&)'#=#"Comma (,)"#=#'Double quotation marks (")'#=#" Leading Blanks" result5=ABC_123 "123"n "ABC 123"n