跳到主要內容 跳至補充內容

SubField - 指令碼與圖表函數

SubField() 用來從上層字串欄位中擷取子字串元件,其中原始記錄欄位包含兩個或多個部分,以分隔符號分隔。

可以使用 Subfield() 函數,例如,為了從包含完整名稱的記錄清單中擷取名字和暱稱、路徑名稱的元件部分,或者從逗點分隔的表格中擷取資料。

如果您在 LOAD 陳述式中使用 Subfield() 函數,並且省略選用 field_no 參數,將針對每一個子字串產生一筆完整記錄。如果使用 Subfield() 載入數個欄位,則會建立所有組合的 Cartesian 產品。

語法:  

SubField(text, delimiter[, field_no ])

傳回的資料類型: 字串

引數:  

引數
引數 描述
text 原始字串。這可以是硬式編碼文字、變數、貨幣符號展開或其他運算式。
delimiter 輸入 text 內將字串分為元件部分的字元。
field_no

選用第三引數是一個整數,指定要傳回上層字串 text 中的哪個子字串。使用值 1 可傳回第一個子字串,使用值 2 可傳回第二個子字串,以此類推。

  • field_no 為正值,會從左至右擷取子字串。
  • field_no 為負值,會從右至左擷取子字串。
提示備註 可以使用 SubField(),來取代函數的複雜組合 (例如 Len()Right()Left()Mid() 及其他字串函數)。
Examples: Chart expressions
ExampleResult
SubField(S, ';' ,2)Returns 'cde' if S is 'abc;cde;efg'.
SubField(S, ';' ,1) Returns an empty string if S is an empty string.
SubField(S, ';' ,1)Returns an empty string if S is ';'.

Suppose you have a variable that holds a path name vMyPath,

Set vMyPath=\Users\ext_jrb\Documents\Qlik\Sense\Apps;.

 

In a text & image chart, you can add a measure such as:
SubField(vMyPath, '\',-3), which results in 'Qlik', because it is the substring third from the right-hand end of the variable vMyPath.

Examples: Script and chart expressions using SubField

此頁面是否對您有幫助?

若您發現此頁面或其內容有任何問題——錯字、遺漏步驟或技術錯誤——請告知我們可以如何改善!