MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Gleiches Wort, aber unterschiedliche Unicode-Zeichen

Das Problem, auf das Sie stoßen, ist, dass Unicode mehrere Möglichkeiten bietet, dasselbe Symbol zu erstellen. Das Python-Modul unicodedata bietet eine Funktion normalize Damit können Sie Unicode-Darstellungen in ein festes Formular umwandeln (z. B. NFC)

from unicodedata import normalize

S1 = b'\xc4\x83\xcc\x83'.decode('UTF-8')
S2 = b'\xe1\xba\xb5'.decode('UTF-8')

print(normalize('NFC', S1).encode('UTF-8'))
print(normalize('NFC', S2).encode('UTF-8'))

In Ihrem Beispiel wird Tripadvisor in NFD-Form angezeigt, während Notepad NFC verwendet.