FindOneOf() 會搜尋字串,以尋找出現的所提供字元集中任何字元的位置。傳回搜尋集合中任意字元第 N 個出現的位置,其中 N 是函數的第三個選用參數。如果未提供第三個參數,則會傳回第一個出現的內容。如果找不到符合的值,則會傳回 0。
語法:
FindOneOf(text, char_set[, count])
傳回的資料類型: 整數
引數
引數
描述
text
原始字串。
char_set
要在 text 中搜尋的字元集。
count
定義要搜尋的任何字元的出現項目。例如,值 2 會搜尋第二個出現項目。
範例:圖表運算式
範例
結果
FindOneOf( 'my example text string', 'et%s' )
傳回 4,因為 e 是範例字串中的第四個字元。
FindOneOf( 'my example text string', 'et%s', 3 )
傳回 12,因為搜尋的是 e、t、% 或 s 中的任何字元,而 t 是第三個出現項目,位於範例字串的位置 12。
FindOneOf( 'my example text string', '¤%&' )
傳回 0,因為範例字串中找不到字元 ¤、% 或 &。
範例 - FindOneOf 基礎事項
概述
開啟資料載入編輯器並將下面的載入指令碼新增至新的索引標籤。
載入指令碼包含:
載入到稱為 Example 之資料表格的資料集。
資料表格中有一個名為 Phrase 的欄位,其中包含要處理的原始文字字串。
載入指令碼
Example:
Load *
Inline
[Phrase
Many tiny beads
For a very long time
Has the potential for growth
];
結果
載入資料並開啟工作表。建立新的表格並將此欄位新增為維度:
Phrase
建立下列計算維度:
=FindOneOf(Phrase, 'e', 1)
=FindOneOf(Phrase, 'y', 1)
=FindOneOf(Phrase, 'ey', 1)
=FindOneOf(Phrase, 'e', 2)
=FindOneOf(Phrase, 'y', 2)
=FindOneOf(Phrase, 'ey', 2)
結果表格
Phrase
FindOneOf(Phrase, 'e', 1)
FindOneOf(Phrase, 'y', 1)
FindOneOf(Phrase, 'ey', 1)
FindOneOf(Phrase, 'e', 2)
FindOneOf(Phrase, 'y', 2)
FindOneOf(Phrase, 'ey', 2)
For a very long time
8
10
8
20
0
10
Has the potential for growth
7
0
7
12
0
12
Many tiny beads
12
4
4
0
9
9
對於每個計算維度,輸出傳回每個片語的搜尋集合中出現字元的位置。例如,字母 e 第一次出現時分別位於每個片語的位置 8、7 和 12。每個片語中的字母 e 第二次出現時位於位置 20、12 和 0 (找不到)。同樣地,字母 'e 或 y' 第一次出現時分別位於每個片語的位置 8、7 和 4。請注意,在片語 For a very long time 中,'e 或 y' 第一次出現時位於位置 8,即 e,第二次出現時位於位置 10,即 y。
以下程式碼顯示如何在載入指令碼中使用該函數。
Example:
Load *, FindOneOf(InputText, SearchFor, Occurrence) AS FindOneOf_Matches
Inline
InputText, SearchFor, Occurrence
my example text string, et%s,1
my example text string, et%s,3
my example text string, ¤%&,1
];
Example:
Load * inline [
TicketID, CustomerComment
1, I need this order ASAP!
2, Please confirm my order @12345.
3, Can you update my order?
4, I have a question about #discount.
5, Thank you!
];