I will be happy to do that, Guillame. And thank you in advance for any help. I'll be at the site where I have this code in about seven hours. I'll send it then. Jim
On Wed, Feb 22, 2023 at 9:29 AM Guillaume Laforge <glafo...@gmail.com> wrote: > Hi James, > > Perhaps you could share with us how you're building the crosstabulation > map? > Somehow, some spacing is introduced, and that would probably in that map > creation that this takes place. > > Guillaume > > On Wed, Feb 22, 2023 at 3:24 PM James McMahon <jsmcmah...@gmail.com> > wrote: > >> Thank you Rachel. I will look at employing .charAt(0) on the key. >> I do believe it is indeed a string. To your point, I suspect I am comparing >> a character to a string. >> What of the need to clean up the keys - stripping them of any extraneous >> spaces so I get just the character itself in the key string? Anyone know a >> way to work through the map and trim keys? >> >> >> On Wed, Feb 22, 2023 at 7:57 AM Rachel Greenham <rac...@merus.eu> wrote: >> >>> Are you sure you’re not comparing Strings to Characters at some point? >>> Going @TypeChecked might reveal if and where that’s happening... >>> >>> -- >>> Rachel Greenham >>> rac...@merus.eu >>> >>> On 22 Feb 2023, at 11:58, James McMahon <jsmcmah...@gmail.com> wrote: >>> >>> I have a Groovy list that holds the unicode representation of select >>> foreign language characters, something like this simplified version: >>> >>> def myList = ['*\u00E4*','\u00D6','\u00F8'] >>> >>> I have built myself a Groovy map that is the crosstabulation of >>> characters by count in an incoming document, so my map looks something like >>> this: >>> >>> crossTab = ["a" : "16736", "b" : "192", " * ä *" : "18"] >>> >>> The foreign language characters in this map that are in the set of keys >>> often have extra whitespace around them, and for certain languages there is >>> a weird "right to left" thing going on that I don't quite fully understand. >>> >>> My objective: iterate through my list, return true if the element from >>> the list is found as a key in the map, and return the count - the map value >>> for that key - if the key is found. My problem: my lookup is failing to >>> return any hits right now. I know that some of these foreign language >>> characters are in my data. I suspect my lookup is failing because the keys >>> are not clean representations of the foreign language characters. >>> >>> How do I modify my keys using Groovy to trim them of leading and >>> trailing whitespace? >>> >>> Since my element from my list is expressed as unicode, how would I >>> convert the trimmed key representation to unicode using Groovy? >>> >>> Thank you in advance for any help. >>> >>> >>> > > -- > Guillaume Laforge > Apache Groovy committer > Developer Advocate @ Google Cloud Platform > > Blog: http://glaforge.appspot.com/ > Twitter: @glaforge <http://twitter.com/glaforge> >