Hello!
I'm trying to build a smart list that captures contacts where a field contains specific words.
I want it to match whole words as opposed to just the characters.
an example would be: contains = mod (as a whole word)
so i wouldn't want it to return entries such as 'module'
More specifically, i'm setting up the Company Web Activity report.
i have a list of let's say our top 100 strategic accounts, and I want to monitor anonymous web activity.
So I need to set up a smart list that looks at the 'inferred company'
Lets say we want to track a company called Shire.
Inferred Company is = Shire wont work as we cannot preempt all the possible ways a company might appear (i.e. Shire UK , Shire US etc.)
The problem is that if there's inferred companies like Lancashire city council or Buckinghamshire etc. the smart list would pick these up too.
So unless there is a 'match whole word' condition we would have to monitor manually and add exclusions. And that's only one of 100+ companies... so doing it manually is quite a task.
Is there anyway to make this more intelligently?
thanks
Try adding a filter for contains "mod" and then another filter for not contains "module". Filter logic should be ALL. You should get results for items such as "modular" and "modification" but not "module".
Thanks Jim
Unfortunately that wouldn't work as we wouldn't know what to exclude.
What we need is to be able to match whole words as opposed to part of words, if that makes sense.
Hi Yannis,
If there is a list of specific words you can use the "is" and then just add all the words to the list you are looking for. When you list them they are all or statements.
The only issue would be if the requirement is genuinely needing a "contains": ie, "Andy Mod", "Mike Mod", "Andy Module".
If you only wanted to search for "Mod", and not "Module".
You are right Nicholas, I've updated my original question so the challenge is more clear!
thanks,
y.
Hi Yannis,
This kind of pattern matching, as simple as it seems at first, isn't possible in a Marketo Smart List. Word boundaries that little bit more intelligence than the platform supports natively.
Of course, word bounds are natively supported in JavaScript. So if you use FlowBoost (the JavaScript engine for Marketo flows) it's easy:
ContainsTheWordMod = {{Lead.Your_Field}}.test(/\bmod\b/i);
ContainsTheWordYannis = {{Lead.Your_Field}}.test(/\byannis\b/i);
// ... etc.