Re: Foreign language chars as map keys
Rachel Greenham <[email protected]>
| Newsgroups | gmane.comp.lang.groovy.user |
|---|---|
| Message-ID | <[email protected]> |
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 [email protected] > On 22 Feb 2023, at 11:58, James McMahon <[email protected]> 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.