Is there some way to ignore case with text functions? I recently realized the map function can be a more elegant way to filter data than route filters, but I can’t seem to find a text function to replicate the case-insensitive functionality available on route filters.
Here’s a use case where this messes me up: let’s say I want to match incoming form fills to CRM records on first AND last OR email. Now, these are Gen Z students filling out a form on Discord, so they are quite likely not to capitalize their names. So young testy mctest’s Discord form submission will not match to Testy McTest’s CRM record in ClickUp:
“Testy McTest” will pass the dedupe filter even if I apply a startcase function to the mapped first last, turning “testy mctest” into “Testy Mctest” with the T still lower-case:
Of course I could just use a route filter here with a case-insensitive operator, but I’m just curious if there’s a way to do this with a text function that I’m not seeing.
I think you have already figured out that the map function is case-sensitive, so I guess that’s why you are using the startcase function.
I think what you want to do is, instead of using Text Opeartors equals to function, use Array Length greater than 0, cause I think everything else looks good, the map function returns an array and to solve this, you will have to use either first or last function to get name/email as a string or just change the filter type to array length greater than 0 .
Ohhhhh so my problem was that it was returning an array not just that the capitalization didn’t work. So I guess there’s no way within a function to just ignore case altogether? But thank you very much for pointing this out. I will implement it and I guess the McSomebodies will just have to deal.
To deal with names with non-starting caps (McTest etc), could I somehow apply the lower() function to both the mapped array element and the value I’m matching it against? Not sure where in the function I would wrap with another lower() function to make them both lowercase though… Any ideas? I’ve implemented this but not sure how to see what it’s actually returning.
I think what you need is to wrap everything in the lower() function. So whatever the complete output of the formula is, gets converted to lowercase. So you will be comparing lower(f(x)) to lower(f(x)) for example.