上一頁 下一頁

BirtStr 類別

BirtStr 類別提供函數來操作字串,例如,連結字串、修剪多餘的空格、取得字串中的某些部分,以及使用小寫或大寫來顯示字串。這個類別是靜態的。 應用程式無法建立這個類別的實例。

BirtStr.charLength

這個函數會傳回給定字串的長度。

語法

integer BirtStr.charLength( string source )

參數

source

String。要評估的字串。

傳回

Integer。指定字串中的字元數。

範例

下列範例會傳回特定字串的長度:

BirtStr.charLength( "Julie Murphy" ) // 傳回 12

下列範例會傳回 CustomerName 欄位中每一個值的長度:

BirtStr.charLength( row["CustomerName"] )

BirtStr.concat

這個函數會傳回因連結指定的字串而產生的字串。

語法

string BirtStr.concat( string source1, ..., sourceN )

參數

source1, ..., sourceN

String。要連結的字串。

傳回

String。因連結一系列字串而產生的字串。

範例

下列範例會傳回因連結多個欄位中的值,而產生的完整位址:

BirtStr.concat( row["AddressLine1"], ", ", row["AddressLine2"], ", ", row["City"], " ", row["PostalCode"], "row["State"], ", ", row["Country"] )

BirtStr.indexOf

這個函數會傳回給定字串中的指定子字串部分。

語法

integer BirtStr.indexOf( sring target, string source, integer start )

參數

target

String。要搜尋的子字串。搜尋會區分大小寫。

source

String。要在其中尋找指定子字串的字串。

start

Integer。選用性的項目。在來源字串中,搜尋開始的位置。如果您省略這個引數,函數會從字串的第一個字元開始搜尋。

傳回

Integer。子字串在字串中的所在位數。字串的第一個字元是從 0 算起。如果找不到該子字串,函數會傳回 -1。

範例

下列範例會傳回指定字元在特定字串中的所在位數:

BirtStr.indexOf( " ", "Julie Murphy" ) // 傳回 5
BirtStr.indexOf( "-", "ModelA-1234-567" ) // 傳回 6
BirtStr.indexOf( "-", "ModelA-1234-567", 7 ) // 傳回 11

下列範例合併使用了 BirtStr.indexOf( ) 與 BirtStr.left( ),以顯示客戶名稱中空格字元前面的字元。BirtStr.left( ) 函數會從第一個字元開始擷取指定長度的子字串。在本例中,要顯示的子字串長度等於空格字元的所在位數。

spaceCharPosition = BirtStr.indexOf( " ", row["customerName"] );
displayFirstName = BirtStr.left( row["customerName"], spaceCharPosition );

如果客戶名稱為 Julie Murphy,表示式會傳回 Julie。

BirtStr.left

這個函數會從字串中擷取指定長度的子字串,並且是從最左側或第一個字元開始擷取。

語法

string BirtStr.left( string source, integer n )

參數

source

String。要從中擷取子字串的字串。

n

Integer。從第一個字元算起,要擷取的字元數。

傳回

Sring。特定長度的子字串。

*
*
*

範例

下列範例會傳回特定字串中各種長度的子字串:

BirtStr.left( "Julie Murphy", 5 ) // 傳回 Julie
BirtStr.left( "Julie Murphy", 12 ) // 傳回 Julie Murphy

下列範例合併使用了 BirtStr.indexOf( ) 與 BirtStr.left( ),以顯示客戶名稱中空格字元前面的字元。BirtStr.left( ) 函數會從第一個字元開始擷取指定長度的子字串。在本例中,要顯示的子字串長度等於空格字元的所在位數。

spaceCharPosition = BirtStr.indexOf( " ", row["customerName"] );
displayFirstName = BirtStr.left( row["customerName"], spaceCharPosition );

如果客戶名稱為 Julie Murphy,表示式會傳回 Julie。

BirtStr.right

這個函數會從字串中擷取指定長度的子字串,並且是從最右側或最後一個字元開始擷取。

語法

String BirtStr.right( String source, integer n )

參數

source

String。要從中擷取子字串的字串。

n

Integer。從最後一個字元算起,要擷取的字元數。

傳回

String。特定長度的子字串。

*
*
*

範例

下列範例會傳回特定字串中各種長度的子字串:

BirtStr.right( "Julie Murphy", 6 ) // 傳回 Murphy
BirtStr.right( "Julie Murphy", 12 ) // 傳回 Julie Murphy

下列範例合併使用了 BirtStr.right( ) 以及 BirtStr.indexOf( ) 和 BirtStr.charLength( ) 函數,以顯示客戶名稱中空格字元後面的字元。本例假設連字號後面的字元數會有變化。因此,整個字串的長度(BirtStr.charLength( ) 所傳回)減掉直到連字號為止的長度(BirtStr.indexOf( ) 所傳回),才是要顯示的字元數。

spaceCharPosition = BirtStr.indexOf( " ", row["customerName"] );
displayLastName = BirtStr.right( row["customerName"], (BirtStr.charLength( row["customerName"] - (spaceCharPosition + 1)) )

如果客戶名稱為 Julie Murphy,表示式會傳回 Murphy。如果客戶名稱為 Kwai Li,表示式會傳回 Li。

BirtStr.search

這個函數會傳回指定的子字串在給定字串中的位置。子字串可以包含萬用字元。

語法

integer BirtStr.search( string pattern, string source, integer index )

參數

pattern

String。要搜尋的字串型樣。搜尋不區分大小寫。您可以在型樣中使用下列的萬用字元:

*
星號 ( * ) 符合零或多個字元,包括空格。例如,t*n 符合 tn、tin 與 teen。
*

如果希望符合字串中字面上的星號或問號,請在這些字元前面加上兩個反斜線字元 (\\)。例如,如果要尋找 R*10 子字串,請使用以下的字串型樣:

"R\\*10"

source

String。要在其中尋找指定子字串的字串。

index

Integer。選用性的項目。在來源字串中,搜尋開始的位置。如果您省略這個引數,函數會從字串的第一個字元開始搜尋。

傳回

Integer。子字串在字串中的所在位數。字串的第一個字元是從 0 算起。如果找不到該子字串,函數會傳回 -1。

範例

下列範例會傳回指定字串型樣在特定字串中的所在位數:

BirtStr.search( "XM?", "XMS-ModelA-1234-567" ) // 傳回 0
BirtStr.search( "ModelA*", "XMS-ModelA-1234-567" ) // 傳回 4
BirtStr.search( "-", "XMS-ModelA-1234-567", 4 ) // 傳回 10

下列範例是在 ProductCode 欄位的每一個值中,搜尋 S*A 字串型樣。如果產品型號為 KBS5412A,表示式會傳回 2。

BirtStr.search( "S*A", row["ProductCode"] )

下列範例合併使用了 BirtStr.search( ) 與 BirtStr.left( ),以顯示產品名稱中字串型樣 -Model* 前面的字元。BirtStr.left( ) 函數會從第一個字元開始擷取指定長度的子字串。在本例中,要顯示的子字串長度等於字串型樣的所在位數。

stringPatternPosition = BirtStr.search( "-Model*", row["productName"] );
displayString = BirtStr.left( row["productName"], stringPatternPosition );

如果產品名稱為 XMS-ModelA-1234,表示式會傳回 XMS。

BirtStr.toLower

這個函數會將字串中的所有字母轉換為小寫。

語法

string BirtStr.toLower( string source )

參數

source

String。要轉換為小寫的字串。

傳回

String。全為小寫字母的指定字串

範例

下列範例會以小寫來顯示 productLine 欄位中的所有值:

BirtStr.toLower( row["productLine"] )

BirtStr.toUpper

這個函數會將字串中的所有字母轉換為大寫。

語法

string BirtStr.toUpper( string source )

參數

source

String。要轉換為大寫的字串。

傳回

String。全為大寫字母的指定字串

範例

下列範例會以大寫來顯示 customerName 欄位中的所有值:

BirtStr.toUpper( row["customerName"] )

BirtStr.trim

這個函數會傳回已移除所有前導與尾端空白字元的字串。它不會移除各單字之間的空白字元。

語法

string BirtStr.trim( string source )

參數

source

String。要從中移除前導與尾端空白字元的字串。

傳回

String。已移除所有前導與尾端空白字元的字串。

範例

下列範例使用 BirtStr.trim( ),來移除 FirstName 與 LastName 資料欄位之值中的所有前導與尾端空白字元。

BirtStr.trim( row["FirstName"]) + " " + BirtStr.trim(row["LastName"] )

BirtStr.trimLeft

這個函數會傳回已移除所有前導與尾端空白字元的字串。它不會移除各單字之間的空白字元。

語法

string BirtStr.trimLeft( string source )

參數

source

String。要從中移除前導空白字元的字串。

傳回

String。已移除所有前導空白字元的字串。

範例

下列範例是讓一個文字字串連結 customerName 欄位中的每一個值。BirtStr.trimLeft( ) 會移除 customerName 值前面的所有空白字元,讓文字字串與 customerName 值之間不會有多餘的空白字元。

"Customer name: " + BirtStr.trimLeft( row["customerName"] )

BirtStr.trimRight

這個函數會傳回已移除所有尾端空白字元的字串。它不會移除各單字之間的空白字元。

語法

string BirtStr.trimRight( string source )

參數

source

String。要從中移除尾端空白字元的字串。

傳回

String。已移除所有尾端空白字元的字串。

範例

下列範例是讓 Comment 欄位中的每一個值連結一個分號,再連結 Action 欄位中的一個值。BirtStr.trimRight( ) 會移除 Comment 值後面的所有空白字元,讓 Comment 字串與分號之間不會有多餘的空白字元。

BirtStr.trimRight( row["Comment"]) + "; " + row["Action"] )

© Copyright Actuate Corporation 2013