Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Score big with last-minute savings on the final tickets to FabCon Vienna. Secure your discount

Reply
JamesMF1982
Frequent Visitor

Using Search in a measure

HI all,

 

I'm hoping someone can help me. I have a column (RESIDENT[AdminType]) that has a load of varying data in there which represents a number of settings. For example "NurseLABench" that will mean Nursing,  Local Authority, benchmark or FrailPCTNegot which will mean Frail, PCT and Negotiate

 

What I want to do is search the column and return full words based on found words in the phrase. I can't use a column due to restrictions so have to use a measure.

 

I thought something like SWITCH would work with SEARCH, but I can't get anything to stick.

 

Any help would be amazing.

 

Thanks

1 ACCEPTED SOLUTION

Hi @JamesMF1982 
If you are creating a measure then you may try

Key Word =
IF (
    HASONEVALUE ( RESIDENT[AdminType] ),
    CONCATENATEX (
        VALUES ( RESIDENT[AdminType] ),
        SWITCH (
            TRUE (),
            CONTAINSSTRING ( RESIDENT[AdminType], "Nurse" ), "Nursing",
            CONTAINSSTRING ( RESIDENT[AdminType], "LA" ), "Local Authority"
        )
    )
)

View solution in original post

4 REPLIES 4
TomasAndersson
Solution Sage
Solution Sage

What would you like the result to be if several words exist? A measure with several full words after each other, like "Nursing Local Authority Benchmark" or something like that?

I think SWITCH() is not perfect in this case since you want to test for each possible word and possibly return several words.

One way (although impractical depending on the number of possible words) would be to do string several either IF(SEARCH()) or maybe even better IF(CONTAINSSTRING()) and test for each word. If the word exists you return the word string, and if not return blank. You would also decide on how to do punctuation/spacing if you have several matches.

result = 
if(CONTAINSSTRING(RESIDENT[AdminType],"Nurse"),"Nursing ","") &
if(CONTAINSSTRING(RESIDENT[AdminType],"LA"),"Local authority ","") 


And so on. Could work.

Hi, I have tried this but when I use the CONTAINSSTRING option, the column I am trying to reference is not available for selection.

Hi @JamesMF1982 
If you are creating a measure then you may try

Key Word =
IF (
    HASONEVALUE ( RESIDENT[AdminType] ),
    CONCATENATEX (
        VALUES ( RESIDENT[AdminType] ),
        SWITCH (
            TRUE (),
            CONTAINSSTRING ( RESIDENT[AdminType], "Nurse" ), "Nursing",
            CONTAINSSTRING ( RESIDENT[AdminType], "LA" ), "Local Authority"
        )
    )
)
tamerj1
Super User
Super User

Hi @JamesMF1982 

you can use SWITCH along with CONTAINSSTRING 

Helpful resources

Announcements
August Power BI Update Carousel

Power BI Monthly Update - August 2025

Check out the August 2025 Power BI update to learn about new features.

August 2025 community update carousel

Fabric Community Update - August 2025

Find out what's new and trending in the Fabric community.