Forum Discussion

Abbi's avatar
Abbi
Helper I
4 years ago
Solved

How to Split a specific value from a column

Hi All,   We have a column named Tags against each ID which contains the bill numbers. Have to pull out the bill numbers against each ID from tags column. Bill number doesn't have standard format. ...
  • Greg_Deckler's avatar
    Greg_Deckler
    4 years ago

    Abbi Still some clean up to do but this should get you started:

    Bill number = 
      VAR __Text = [Tags]
      VAR __1stBill = SEARCH("bill", __Text,,0)
      VAR __1stSemi = IF(IF(__1stBill<>0,SEARCH(";", __Text, __1stBill,0),0)=0,LEN(__Text)+1,SEARCH(";", __Text, __1stBill,0))
      VAR __2ndBill = IF(__1stSemi<>0,SEARCH("bill", __Text,__1stSemi,0),0)
      VAR __2ndSemi = IF(IF(__2ndBill<>0,SEARCH(";", __Text, __2ndBill,0),0)=0,LEN(__Text)+1,SEARCH(";", __Text, __2ndBill,0))
      VAR __1stBillNum = IF(__1stBill=0,BLANK(),MID(__Text,__1stBill+4,__1stSemi-__1stBill-4))
      VAR __2ndBillNum = IF(__2ndBill=0,BLANK(),MID(__Text,__2ndBill+4,__2ndSemi - __2ndBill - 4))
      VAR __1stTales = SEARCH("tales:", __Text,,0)
      VAR __1stTalesSemi = IF(IF(__1stBill<>0,SEARCH(";", __Text, __1stTales,0),0)=0,LEN(__Text)+1,SEARCH(";", __Text, __1stTales,0))
      VAR __1stTalesNum = IF(__1stTales=0,BLANK(),MID(__Text,__1stTales+6,__1stTalesSemi - __1stTales - 6))
    RETURN
        SWITCH(TRUE(),
            ISBLANK(__1stTalesNum) && ISBLANK(__2ndBillNum),__1stBillNum,
            ISBLANK(__1stTalesNum) && NOT(ISBLANK(__2ndBillNum)),__1stBillNum & ";" & __2ndBillNum,
            ISBLANK(__2ndBillNum) && NOT(ISBLANK(__1stTalesNum)),__1stBillNum & ";" & __1stTalesNum,
            __1stBillNum & ";" & __2ndBillNum & ";" & __1stTalesNum
        )