I have a dictionary of string people (key) and string addresses (value). I want to have an if statement that returns true if any key in my dictionary contains the substring ‘anders’. Is there any way to do this? I have tried dict.ContainsKey(“anders”) but that just returns true if any key is explicitly named ‘anders’. I would like it to return true even if the key is anderson or andersen. I know this is a pretty strange case but i need it for a purpose.
Thanks
There is no “wildcard search” for dictionary keys. In order to do this type of search, you are going to lose the O(constant) search that a dictionary gives you.
You’ll have to iterate over the keys of the dictionary and look for those that contain the substring you require. Note that this will be an O(n*X) iteration, where n is the number of keys and X is the average size of your key string.
There’s a nifty one-liner that will help:
But it’s a heavy operation.