上一頁|下一頁

SAS 字串函數的國際化相容性

SAS 提供字串函數和 CALL 常式,可讓您輕鬆地處理字元資料。多個原始 SAS 字串函數假設一個字元的大小一律是一個位元組。此程序十分適用於單一位元組字元集 (SBCS) 的資料。不過,其中部分函數和 CALL 常式與雙位元組字元集 (DBCS) 或多位元組字元集 (MBCS) 的資料搭配使用時,資料的處理通常會不正確,因而產生不正確的結果。
DBCS 編碼需要變動的位元組數目以代表每個字元。MBCS 有時是作為 DBCS 的同義字。
為了解決此問題,SAS 引進一組字串函數和 CALL 常式 (稱為 K 函數) 以進行必須仔細地處理 DBCS 和 MBCS 資料的那些字串操作。 此頁面顯示每個 SAS 字串函數的 I18N 相容性層級。I18N 是國際化的縮寫。相容性指出使用特定字串函數的程式是否可以改寫為不同的語言和地區設定,而不需要進行程式變更。
使用者需要瞭解位元組型位移長度與字元型位移長度之間的差異,以適當地使用 K 函數。大部分 K 函數都需要字元型位移或長度。在 SBCS 環境下,位元組型單位與字元型單位相同。不過,在 DBCS 或 MBCS 環境下,兩者的差異便相當大,而且程式設計人員需要加以區分。使用者可能需要變更程式設計邏輯,以使用 K 函數。大部分 K 函數都需要以目前 SAS 工作階段編碼進行編碼的字串。
字串函數的 I18N 層級是根據函數是否可以處理 DBCS、MBCS 或 SBCS 來指派。以下是層級的描述:
I18N 層級 0
此函數是針對 SBCS 資料所設計。請不要使用此函數來處理 DBCS 或 MBCS 資料。
I18N 層級 1
如果您是處理 DBCS 或 MBCS 資料,則應該盡量避免使用此函數。 在特定情況下,I18N 層級 1 函數可能無法正確處理 DBCS 或 MBCS 編碼。
I18N 層級 2
此函數可以用於 SBCS、DBCS 和 MBCS (UTF-8) 資料。
SAS 字串函數
函數
描述
I18N 層級 0
I18N 層級 1
I18N 層級 2
SAS Functions and CALL Routines: Reference 中的 “ANYALNUM Function”
搜尋字元字串中的英數字元,並傳回第一個找到字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “ANYALPHA Function”
搜尋字元字串中的字母字元,並傳回第一個找到字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “ANYCNTRL Function”
搜尋字元字串中的控制字元,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “ANYDIGIT Function”
搜尋字元字串中的數字,並傳回第一個找到數字的位置。
X
SAS Functions and CALL Routines: Reference 中的 “ANYFIRST Function”
搜尋字元字串中的字元,而此字元適用於 VALIDVARNAME=V7 下作為 SAS 變數名稱中的第一個字元,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “ANYGRAPH Function”
搜尋字元字串中的圖形字元,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “ANYLOWER Function”
搜尋字元字串中的小寫字母,並傳回第一個找到該字母的位置。
X
SAS Functions and CALL Routines: Reference 中的 “ANYNAME Function”
搜尋字元字串中的字元,而此字元適用於 VALIDVARNAME=V7 下的 SAS 變數名稱,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “ANYPRINT Function”
搜尋字元字串中的可列印字元,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “ANYPUNCT Function”
搜尋字元字串中的標點符號字元,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “ANYSPACE Function”
搜尋字元字串中的空格字元 (空白、水平和垂直定位點、歸位字元、換行字元和換頁字元)。傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “ANYUPPER Function”
搜尋字元字串中的大寫字母,並傳回第一個找到該字母的位置。
X
SAS Functions and CALL Routines: Reference 中的 “ANYXDIGIT Function”
搜尋字元字串中代表數字的十六進位字元,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “BYTE Function”
傳回 ASCII 或 EBCDIC 定序序列中的一個字元。
X
SAS Functions and CALL Routines: Reference 中的 “CAT Function”
不移除前置或尾端空白,並傳回串連的字元字串。
X
SAS Functions and CALL Routines: Reference 中的 “CATS Function”
移除前置及尾端空白,並傳回串連的字元字串。
X
SAS Functions and CALL Routines: Reference 中的 “CATT Function”
移除尾端空白,並傳回串連的字元字串。
X
SAS Functions and CALL Routines: Reference 中的 “CATX Function”
移除前置及尾端空白、插入分隔符號,並傳回字元字串。
X
SAS Functions and CALL Routines: Reference 中的 “CHOOSEC Function”
傳回字元值,以代表從引數清單中進行選擇的結果。
X
SAS Functions and CALL Routines: Reference 中的 “CHOOSEN Function”
傳回數值,以代表從引數清單中進行選擇的結果。
X
SAS Functions and CALL Routines: Reference 中的 “COALESCEC Function”
傳回數值引數清單中的第一個非遺漏值。
X
SAS Functions and CALL Routines: Reference 中的 “COLLATE Function”
傳回 ASCII 或 EBCDIC 定序序列中的字元字串。
X
SAS Functions and CALL Routines: Reference 中的 “COMPARE Function”
傳回兩個字串不同的最左邊字元位置,或在沒有任何差異時傳回 0。
X
SAS Functions and CALL Routines: Reference 中的 “COMPBL Function”
移除字元字串中的多個空白。
X
SAS Functions and CALL Routines: Reference 中的 “COMPGED Function”
傳回兩個字串之間的廣義編輯距離。
X
SAS Functions and CALL Routines: Reference 中的 “COMPLEV Function”
傳回兩個字串之間的 Levenshtein 編輯距離。
X
SAS Functions and CALL Routines: Reference 中的 “COMPRESS Function”
傳回從原始字串移除所指定字元的字元字串。
X
SAS Functions and CALL Routines: Reference 中的 “COUNT Function”
計算所指定子字串出現在字元字串內的次數。
X
SAS Functions and CALL Routines: Reference 中的 “COUNTC Function”
計算字串中出現或未出現在字元清單中的字元數。
X
SAS Functions and CALL Routines: Reference 中的 “DEQUOTE Function”
移除開頭為引號的字元字串中的相符引號,並刪除右引號右邊的所有字元。
X
SAS Functions and CALL Routines: Reference 中的 “FIND Function”
搜尋字元字串內特定子字元字串。
X
SAS Functions and CALL Routines: Reference 中的 “FINDC Function”
搜尋字串中是否有字元清單中的任何字元。
X
SAS Functions and CALL Routines: Reference 中的 “HTMLDECODE Function”
解碼含有 HTML 數值字元參考或 HTML 字元實體參考的字串,並傳回解碼的字串。
X
SAS Functions and CALL Routines: Reference 中的 “HTMLENCODE Function”
使用 HTML 字元實體參考來編碼字元,並傳回編碼的字串。
X
SAS Functions and CALL Routines: Reference 中的 “IFC Function”
根據運算式為 true、false 還是遺漏,來傳回字元值。
X
SAS Functions and CALL Routines: Reference 中的 “IFN Function”
根據運算式為 true、false 還是遺漏,來傳回數值。
X
SAS Functions and CALL Routines: Reference 中的 “INDEX Function”
搜尋字元運算式中的字元字串,並傳回該字串第一次出現時其第一個字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “INDEXC Function”
搜尋字元運算式中的任何指定字元,並傳回該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “INDEXW Function”
搜尋字元運算式中指定為單字的字串,並傳回該單字第一個字元的位置。
X
KCOMPARE 函數
傳回字元運算式的比較結果。
X
KCOMPRESS 函數
從字元運算式中移除指定的字元。
X
KCOUNT 函數
傳回運算式中的雙位元組字元數。
X
KCVT 函數
將資料從某種類型的編碼資料轉換為另一種編碼資料。
X
KINDEX 函數
搜尋字元運算式中的字元字串。
X
KINDEXC 函數
搜尋字元運算式中的指定字元。
X
KLEFT 函數
移除不必要的前置 DBCS 空白和 SO-SI,讓字元運算式向左對齊。
X
KLENGTH 函數
傳回引數的長度。
X
KLOWCASE 函數
將引數中的所有字母都轉換為小寫。
X
KREVERSE 函數
反轉字元運算式。
X
KRIGHT 函數
修剪尾端 DBCS 空白和 SO/SI,讓字元運算式向右對齊。
X
KSCAN 函數
從字元運算式中選取指定單字。
X
KSTRCAT 函數
串連兩個以上的字元運算式。
X
KSTRIP 函數
從字元字串中移除前置與尾端空白。
X
KSUBSTR 函數
從引數中擷取子字串。
X
KSUBSTRB 函數
根據引數中子字串的位元組位置,從引數中擷取子字串。
X
KTRANSLATE 函數
取代字元運算式中的特定字元。
X
KTRIM 函數
從字元運算式移除尾端 DBCS 空白和 SO-SI。
X
KTRUNCATE 函數
將數值截斷為指定的長度。
X
KUPCASE 函數
將引數中的所有字母都轉換為大寫。
X
KUPDATE 函數
插入、刪除以及取代字元值內容。
X
KUPDATEB 函數
根據字元值在引數中的位元組位置,來插入、刪除以及取代字元值內容。
X
KVERIFY 函數
傳回運算式的唯一第一個字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “LEFT Function”
讓字元字串向左對齊。
X
SAS Functions and CALL Routines: Reference 中的 “LENGTH Function”
傳回非空白字元字串的長度 (排除尾端空白),並傳回 1 表示空白字元字串。
X
SAS Functions and CALL Routines: Reference 中的 “LENGTHC Function”
傳回字元字串的長度 (包含尾端空白)。
X
SAS Functions and CALL Routines: Reference 中的 “LENGTHM Function”
傳回配置給字元字串的記憶體數量 (位元組)。
X
SAS Functions and CALL Routines: Reference 中的 “LENGTHN Function”
傳回字元字串的長度 (排除尾端空白)。
X
SAS Functions and CALL Routines: Reference 中的 “LOWCASE Function”
將引數中的所有字母都轉換為小寫。
X
SAS Functions and CALL Routines: Reference 中的 “MISSING Function”
傳回數值結果,指出引數是否包含遺漏值。
X
SAS Functions and CALL Routines: Reference 中的 “NLITERAL Function”
將指定的字元字串轉換為 SAS 名稱常值。
X
SAS Functions and CALL Routines: Reference 中的 “NOTALNUM Function”
搜尋字元字串中的非英數字元,並傳回第一個找到字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “NOTALPHA Function”
搜尋字元字串中的非字母字元,並傳回第一個找到字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “NOTCNTRL Function”
搜尋字元字串中不是控制字元的字元,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “NOTDIGIT Function”
搜尋字元字串中不是數字的任何字元,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “NOTFIRST Function”
搜尋字元字串中的無效第一個字元,而此字元在 VALIDVARNAME=V7 下的 SAS 變數名稱中,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “NOTGRAPH Function”
搜尋字元字串中的非圖形字元,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “NOTLOWER Function”
搜尋字元字串中不是小寫字母的字元,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “NOTNAME Function”
搜尋字元字串中的無效字元,而此字元在 VALIDVARNAME=V7 下的 SAS 變數名稱中,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “NOTPRINT Function”
搜尋字元字串中的不可列印字元,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “NOTPUNCT Function”
搜尋字元字串中不是標點符號字元的字元,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “NOTSPACE Function”
搜尋字元字串中不是空格字元的字元 (空白、水平和垂直定位點、歸位字元、換行字元和換頁字元),並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “NOTUPPER Function”
搜尋字元字串中不是大寫字母的字元,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “NOTXDIGIT Function”
搜尋字元字串中不是十六進位字元的字元,並傳回第一個找到該字元的位置。
X
SAS Functions and CALL Routines: Reference 中的 “NVALID Function”
檢查字元字串作為 SAS 變數名稱的有效性。
X
SAS Functions and CALL Routines: Reference 中的 “PROPCASE Function”
將引數中的所有單字都轉換為適當大小寫。
X
SAS Functions and CALL Routines: Reference 中的 “QUOTE Function”
在字元值中增加雙引號。
X
SAS Functions and CALL Routines: Reference 中的 “RANK Function”
傳回字元在 ASCII 或 EBCDIC 定序序列中的位置。
X
SAS Functions and CALL Routines: Reference 中的 “REPEAT Function”
傳回字元值,該值由第一個引數重複 n+1 次所構成。
X
SAS Functions and CALL Routines: Reference 中的 “REVERSE Function”
反轉字元字串。
X
SAS Functions and CALL Routines: Reference 中的 “RIGHT Function”
讓字元運算式向右對齊。
X
SAS Functions and CALL Routines: Reference 中的 “SCAN Function”
傳回字元字串中的第 n 個單字。
X
SAS Functions and CALL Routines: Reference 中的 “SOUNDEX Function”
編碼字串,以利搜尋。
X
SAS Functions and CALL Routines: Reference 中的 “SPEDIS Function”
決定兩個單字的相符概度 (以兩個單字之間的不對稱拼字距離表示)。
X
SAS Functions and CALL Routines: Reference 中的 “STRIP Function”
傳回已移除所有前置和尾端空白的字元字串。
X
SAS Functions and CALL Routines: Reference 中的 “SUBPAD Function”
傳回具有所指定長度的子字串,必要時會使用空白填補。
X
SAS Functions and CALL Routines: Reference 中的 “SUBSTR (left of =) Function”
從引數中擷取子字串。
X
SAS Functions and CALL Routines: Reference 中的 “SUBSTRN Function”
傳回允許結果長度為零的子字串。
X
SAS Functions and CALL Routines: Reference 中的 “TRANSLATE Function”
取代字元字串中的特定字元。
X
使用指定的轉譯表格,來轉碼資料。
X
SAS Functions and CALL Routines: Reference 中的 “TRANWRD Function”
取代或移除子字串出現在字元字串中的所有位置。
X
SAS Functions and CALL Routines: Reference 中的 “TRIM Function”
移除字元字串中的尾端空白,並在字串遺漏時傳回一個空白。
X
SAS Functions and CALL Routines: Reference 中的 “TRIMN Function”
移除字元運算式中的尾端空白,並在運算式遺漏時傳回長度為零的字串。
X
SAS Functions and CALL Routines: Reference 中的 “UPCASE Function”
將引數中的所有字母都轉換為大寫。
X
SAS Functions and CALL Routines: Reference 中的 “URLDECODE Function”
傳回使用 URL 逸出語法進行解碼的字串。
X
SAS Functions and CALL Routines: Reference 中的 “URLENCODE Function”
傳回使用 URL 逸出語法進行編碼的字串。
X
SAS Functions and CALL Routines: Reference 中的 “VERIFY Function”
傳回字串中不在數個其他字串內任何一個中的第一個字元的位置。
X
上一頁|下一頁|頁面頂端