Forum Discussion

01_RAF_01's avatar
01_RAF_01
Frequent Visitor
4 years ago
Solved

Text functions DAX

Hi Guys, 

 

im looking for a method to achieve the following. 

I have 2 columns. the first colomn contains names (name) and the other colums countries (country).

 

Now im looking to make another (calculated) column which searches the column "name" for people who starting with the letters m to z and have the "country" USA and FR. For those "hits" i want the tekst in the column to be "YES". For people who starting with other letters and have the "country" USA and FR. For those "hits" i want the tekst in the column to be "YESSS". Al other combo's i want "NO". 

 

Anyone familiair with tekstfunctions in DAX? 

  • Anonymous's avatar
    Anonymous
    4 years ago

    Hi 01_RAF_01 

    can you please try

    if(Table[Country] in {'USA','FR'}, 

                if(LEFT(Table[name],1) in {'m','n','o','p','q','r','s','t','u','v','w','x','y','z'},"YES","YESSS"),"NO")

           

4 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi 01_RAF_01 

    can you please try

    if(Table[Country] in {'USA','FR'}, 

                if(LEFT(Table[name],1) in {'m','n','o','p','q','r','s','t','u','v','w','x','y','z'},"YES","YESSS"),"NO")

           

    • 01_RAF_01's avatar
      01_RAF_01
      Frequent Visitor

      thanks Anonymous it worked. I thought maybe there was a solution to look for the whole combination of letters without typing them all seperate. any idea if there is a solution for that?

  • Samarth_18's avatar
    Samarth_18
    Community Champion

    Hi 01_RAF_01 ,

     

    You can try below code:-

    Column =
    VAR startswith =
        LEFT ( Country_data[Name], 1 )
    VAR result =
        IF (
            startswith
                IN { "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" },
            TRUE (),
            FALSE ()
        )
    RETURN
        IF (
            result
                && Country_data[Country] IN { "USA", "FR" },
            "Yes",
            IF (
                result = FALSE ()
                    && Country_data[Country] IN { "USA", "FR" },
                "YESSS",
                "NO"
            )
        )

    Output:-

     

    Thanks,

    Samarth

     

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi 01_RAF_01 

    I am not aware of any such pattern matching functionality on DAX.

    When I had to do a similar job , I used R code in Power Query editor.