[英]Spotfire - Extract text based on conditions
我有一列包含一個字符串值,如下所示:
ZAE/GER-ERT/HEZ/PDC
這個想法是提取第一個三元組(本節選中的 ZAE)和基於規則的第二個三元組。
規則是,如果有一個 '-' 分隔兩個三元組,我們不提取它們,我們只取一個 '/' 之后的第一個三元組,並且在它之后沒有一個 '-'。
然后我們使用 - 來分隔兩個結果,這里是示例的目的:ZAE-HEZ
我想在一個新的計算列中得到這個值。
我嘗試使用基於 Find() 和 ExtractRX() 函數的索引,但無法使其工作。
提前致謝 !
我不確定這是最簡單的方法,但它適用於您的示例(假設字符串總是以 3 為一組的字母數字)。
您可以通過中間列來完成(為了理智,盡管您可以將 [tmp] 公式直接放入最后一列):
[tmp] 作為
RXReplace(RXReplace([your_column],'\\w{3}-\\w{3}','','g'),'/+','/','g')
這將刪除任何像 GER-ERT 這樣的雙三元組,然后刪除任何剩余的雙 /
然后最后一列將 [tmp] 拆分為 / 並連接第一項和第二項
Concatenate(Split([tmp],'/',1),'-',Split([tmp],'/',2))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.