前のページ|次のページ

KPROPCASE 関数

中国語、日本語、韓国語、台湾語(CJKT)文字を変換します。

カテゴリ: DBCS
制限事項: この関数にはI18Nレベル2ステータスが割り当てられ、SBCS、DBCS、およびMBCS (UTF8)と組み合わせて使用するように設計されています。 詳細については、次を参照してください。 国際化の互換性

構文

str=KPROPCASE(<instr> , (<options> ))

必須引数

str

変換された、現在のSASセッションエンコーディングのデータ文字列。

instr

入力データ文字列。

options

指定されたオプションに基づいて、日本語、中国語、韓国語、台湾語文字を変換します。

HALF-KATAKANA, FULL-KATAKANA

半角カタカナを全角カタカナに変換します。このオプションは、日本語エンコーディングでのみ使用します。

制限事項 このオプションは、FULL-KATAKANA, HALF-KATAKANAオプションと同時に使用できません。

FULL-KATAKANA, HALF-KATAKANA

全角カタカナを半角カタカナに変換します。このオプションは、日本語エンコーディングでのみ使用します。

制限事項 このオプションは、HALF-KATAKANA, FULL-KATAKANAオプションと同時に使用できません。

KATAKANA, ROMAJI

カタカナ文字列をローマ字文字列に変換します。このオプションは、日本語エンコーディングでのみ使用します。

制限事項 このオプションは、ROMAJI, KATAKANAオプションと同時に使用できません。

ROMAJI, KATAKANA

ローマ字文字列をカタカナ文字列に変換します。このオプションは、日本語エンコーディングでのみ使用します。

制限事項 このオプションは、KATAKANA, ROMAJIオプションと同時に使用できません。

FULL-ALPHABET, HALF-ALPHABET

全角アルファベット文字を半角アルファベット文字に変換します。このオプションは、日本語、中国語、韓国語、台湾語エンコーディングでのみ使用します。

制限事項 このオプションは、HALF-ALPHABET, FULL-ALPHABETオプションと同時に使用できません。

HALF-ALPHABET, FULL-ALPHABET

半角アルファベット文字を全角アルファベット文字に変換します。このオプションは、日本語、中国語、韓国語、台湾語エンコーディングでのみ使用します。

制限事項 このオプションは、FULL-ALPHABET, HALF-ALPHABETオプションと同時に使用できません。

LOWERCASE, UPPERCASE

小文字アルファベット文字を大文字アルファベット文字に変換します。

制限事項 このオプションは、UPPERCASE, LOWERCASEオプションと同時に使用できません。

UPPERCASE, LOWERCASE

大文字アルファベット文字を小文字アルファベット文字に変換します。

制限事項 このオプションは、LOWERCASE, UPPERCASEオプションと同時に使用できません。

PROPER

エンコーディングに基づいて、次のデフォルトオプションを指定します。

  • 日本語エンコーディング:
    • HALF-KATAKANA,FULL-KATAKANA
    • FULL-ALPHABET, HALF-ALPHABET
    • LOWERCASE, UPPERCASE
  • 韓国語エンコーディング:
    • FULL-ALPHABET, HALF-ALPHABET
  • 中国語エンコーディング:
    • FULL-ALPHABET, HALF-ALPHABET
  • 台湾語エンコーディング:
    • FULL-ALPHABET, HALF-ALPHABET

詳細

制限と詳しい情報については、SAS文字列関数の国際化の互換性を参照してください。
指定されたオプションとデフォルトオプションに基づいて、入力文字列を変換します。KPROPCASE関数は、中国語、日本語、韓国語、台湾語(CJKT)環境をサポートします。

次に、KPROPCASE関数の使用例を示します。
length fullkana halfkana upper lower fullalpha $ 200;
length str1 str2 str3 str4 str5 str7 str8 $ 30 str6 $44;
lower = 'do-naxtutsu';  /* Doughnuts in Japanese Roman word. */
upper = 'DO-NAXTUTSU';  /* Doughnuts in Japanese Roman word. */
fullkana = unicode('\u30C9\u30FC\u30CA\u30C3\u30C4');
halfkana = unicode('\uFF84\uFF9E\uFF70\uFF85\uFF6F\uFF82');
fullalpha = unicode('\uFF24\uFF2F\uFF0D\uFF2E\uFF21\uFF38\uFF34\uFF35\uFF34\
uFF33\uFF35');
str1 = kpropcase(fullkana, 'full-katakana,half-katakana');
if (halfkana EQ trim(str1)) then
  put str1= $hex14.;
str2 = kpropcase(halfkana, 'half-katakana, full-katakana');
if (fullkana EQ trim(str2)) then
  put str2= $hex22.;
str3 = kpropcase(fullkana, 'katakana,romaji');
if (trim(str3) EQ upper) then
  put str3=  ;
str4 = kpropcase(upper, 'romaji,katakana');
if (trim(str4) EQ fullkana) then
  put str4= $hex22.;
str5 = kpropcase(fullalpha, 'full-alphabet, half-alphabet');
if (trim(upper) EQ str5) then
  put str5=;
str6 = kpropcase(upper, 'half-alphabet, full-alphabet');
if (trim(str6) EQ fullalpha) then
  put str6= $hex46.;
str7 = kpropcase(lower, 'lowercase, uppercase');
if (trim(str7) EQ upper) then
  put str7=;
str8 = kpropcase(upper, 'uppercase, lowercase');
if (trim(str8) EQ lower) then
 put str8=;
RESULTS:
str1=C4DEB0C5AFC220
str2=8368815B83698362836320
str3=DO-NAXTUTSU
str4=8368815B83698362836320
str5=DO-NAXTUTSU
str6=8263826E817C826D826082778273827482738272827420
str7=DO-NAXTUTSU
str8=do-naxtutsu
前のページ|次のページ|ページの先頭へ