前のページ|次のページ

URLENCODE関数

URLのエスケープ構文を使用してエンコードされた文字列を返します。

カテゴリ: Webツール
制限事項: この関数は、I18Nレベル1に準拠しています。英語以外の言語を使用する場合、可能な限りI18Nレベル1の関数の使用は避けてください。特定の環境下では、I18Nレベル1の関数は、2バイト文字セット(DBCS)または複数バイト文字セット(MBCS)エンコーディングを使用すると正常に動作しない場合があります。

構文

URLENCODE(argument)

必須引数

argument

文字定数、変数または式を指定します。

詳細

DATAステップで返される変数の長さ

まだ長さが割り当てられていない変数にURLENCODE関数から値が返される場合、その変数には200バイトの長さが割り当てられます。
URLDECODEおよびURLENCODE関数では、エスケープシーケンスによって生成されたバイトがエンコーディングに基づく有効な文字かどうかは確認されません。

基本

argumentは、SASセッションエンコーディングまたはUTF-8エンコーディングのいずれかを使用してエンコードできます。SASセッションエンコーディングを使用してargumentをエンコードするには、システムオプションURLENCODING=SESSIONを設定します。UTF-8エンコーディングを使用してargumentをエンコードするには、システムオプションURLENCODING=UTF8を設定します。
URLENCODE関数は、URLに使用されると意味を持つ可能性のある文字をエンコードします。この関数は、次を除くすべての文字をエンコードします。
  • すべての英数字
  • ドル記号($)
  • ハイフン(-)
  • アンダースコア(_)
  • アットマーク(@)
  • ピリオド(.)
  • 感嘆符(!)
  • アスタリスク(*)
  • 開始かっこ( ( )と閉じかっこ( ) )
  • カンマ(,)
注: エンコードされた文字列は、元の文字列よりも長くなる可能性があります。この関数を使用する場合は、長さを追加することを検討する必要があります。

次のSASステートメントでは、SASセッションエンコーディングを使用して結果を生成します。
SASステートメント
結果
x1=urlencode('abc def');
put x1;
  
abc%20def
x2=urlencode('why?');
put x2;
  
why%3F
x3=urlencode('ABC#1');
put x3;
  
ABC%231

関連項目:

関数:
システムオプション:
URLENCODING= System Option (SASシステムオプション: リファレンス)
前のページ|次のページ|ページの先頭へ