Forum Discussion
CONTAINSTRING function help
- 6 years ago
CONTAINSSTRING returns a Boolean (e.g. True or False). If you want to use it in a IF statement, you can use :
Check = IF(CONTAINSSTRING("ABC") || CONTAINSSTRING("EGF"), TRUE, FALSE)Note the double 's' in containSString by the way 🙂
Kind regards
Djerro123
-------------------------------
If this answered your question, please mark it as the Solution. This also helps others to find what they are looking for.
Keep those thumbs up coming! 🙂
- 6 years ago
Hi Anonymous
Sorry, my initial post wan't completely clear.
You can use either option as the logical test inside your IF statement and they would yeild the same result.
It's worth noting that the OR function only accepts 2 arguments so if you have more than 2, you would need to use nested OR functions.
As a result, I tend to opt for the 'or' operator '||' as I find it easier to read.
What I was trying to get across in my previous post is that each argument has to be a valid logical test in its own right.
So, you can't use:
Column = IF ( CONTAINSSTRING ( Table1[Column1], "ABC" || "EFG" ), "Yes", "No )But instead have to use:
Column = IF ( CONTAINSSTRING ( Table1[Column1], "ABC" ) || CONTAINSSTRING ( Table1[Column1], "EFG" ), "Yes", "No )Hope it helps.
Best regards,
Martyn
If I answered your question, please help others by accepting it as a solution.
Hi Anonymous
You need to write the table and column reference for both conditions:
E.g.
--Using 'or' operator
CONTAINSSTRING ( Table1[Column1], "ABC" ) || CONTAINSSTRING ( Table1[Column1], "EFG" )
-- Using OR function
OR ( CONTAINSSTRING ( Table1[Column1], "ABC" ), CONTAINSSTRING ( Table1[Column1], "EFG" ) )
Best regards,
Martyn
If I answered your question, please help others by accepting it as a solution.
- Anonymous6 years agoNot applicableThanks both,
Martyn, I guess you’re showing two different options, both result the same?
Thanks again- MartynRamsden6 years agoSolution Sage
Hi Anonymous
Sorry, my initial post wan't completely clear.
You can use either option as the logical test inside your IF statement and they would yeild the same result.
It's worth noting that the OR function only accepts 2 arguments so if you have more than 2, you would need to use nested OR functions.
As a result, I tend to opt for the 'or' operator '||' as I find it easier to read.
What I was trying to get across in my previous post is that each argument has to be a valid logical test in its own right.
So, you can't use:
Column = IF ( CONTAINSSTRING ( Table1[Column1], "ABC" || "EFG" ), "Yes", "No )But instead have to use:
Column = IF ( CONTAINSSTRING ( Table1[Column1], "ABC" ) || CONTAINSSTRING ( Table1[Column1], "EFG" ), "Yes", "No )Hope it helps.
Best regards,
Martyn
If I answered your question, please help others by accepting it as a solution.
- Anonymous6 years agoNot applicableHi Martyn,
Great explanation, thanks.
What I was trying to do is exactly what you’re saying not to.
“ABC” || “EFG”
Learning every day with DAX. More I learn, easier it’s getting.
Thanks