Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
5 years ago
Solved

How to search a string inside a text field ?

Hello Everyone,

I am looking for a solution where I have to search for a particular keyword, let say "NFR" from a text field.

I tried with CONTAINSSTRING() , Find() in my dax . But nothing helped. Below is my DAX.
        Find NFR = IF ( FIND ( "nfr", LOWER ( [Summary] ),, 0 ) > 0, 1, 0 )
But in stead of searching only "NFR" keyword in a whole, It is also considering "infrastructure", bcoz it has "nfr". I dont want that.
I want only individual keyword "NFR" from the text field.KIndly help.
 

Thanks In Advance

  • Anonymous , Then Search, find and containssting should work

     

    if(SEARCH("nfr",[Summary],,0)>0,1,0) //Search is case-insensitive  , so no need pf lower

     

  • Anonymous's avatar
    Anonymous
    5 years ago

    Hi Anonymous 

    You may use CONTAINSSTRING function or Search function (like   replied before) to build measure or calculated column to find "NFR" in text field. And Find function will recognize letter case, so the result is incorrect.

    I build a sample table to have a test.

    Measure:

     

    Find NFR 2 = IF(CONTAINSSTRING(MAX('Table'[Summary]),"NFR"),1,0)

     

    Calculated column:

     

    C_Find NFR = IF(CONTAINSSTRING('Table'[Summary],"NFR"),1,0)

     

    Result:

    You can download the pbix file from this link: How to search a string inside a text field ?

     

    Best Regards,

    Rico Zhou

     

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly. 

4 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi Anonymous 

    You may use CONTAINSSTRING function or Search function (like   replied before) to build measure or calculated column to find "NFR" in text field. And Find function will recognize letter case, so the result is incorrect.

    I build a sample table to have a test.

    Measure:

     

    Find NFR 2 = IF(CONTAINSSTRING(MAX('Table'[Summary]),"NFR"),1,0)

     

    Calculated column:

     

    C_Find NFR = IF(CONTAINSSTRING('Table'[Summary],"NFR"),1,0)

     

    Result:

    You can download the pbix file from this link: How to search a string inside a text field ?

     

    Best Regards,

    Rico Zhou

     

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly. 

  • Anonymous , if you only want nfr

    then you can do

    if(LOWER ( [Summary] ) ="nfr",1,0)

     

    at start

    if(left(LOWER ( [Summary] ),3) ="nfr",1,0)

    • Anonymous's avatar
      Anonymous
      Not applicable

      I want only these key words in my search.  But "NFR" can be anywhere within the Summary field , which is of 200-300 character length string

      NFR
      NFR:
      NFR -
      *NFR*

       

       Thanks 

      • amitchandak's avatar
        amitchandak
        Super User

        Anonymous , Then Search, find and containssting should work

         

        if(SEARCH("nfr",[Summary],,0)>0,1,0) //Search is case-insensitive  , so no need pf lower