Engelske titler som består av flere ord er ofte slått sammen, f.eks «marketingmanager» og «customerservicemanager». Disse må splittes opp for å kunne falle inn under «marketing manager» for bearbeiding. Vi har prøvd med biblioteker for stavekontroll, men ikke fått til å splitte der. Det som deretter fungerer er å bruke Google Translate og sette kildespråk til noe annet enn engelsk.
Dette fungerer fint, man må bare ta høyde for at Google returnerer tekst med blandet små og store bokstaver. Man må også sjekke at det faktisk er det samme ordet med og uten mellomrom.
Hvis man får false på IsWordSameWithoutBlanks() er det gjerne fordi originalen ikke var på engelsk.
Dette er imidlirtid ikke bedre enn at manuel sjekk bør legges inn.
def SplitEnglishWord(string:str):
"""
Splits English words such as 'marketingmanager' and returns lower case 'marketing manager'.
This is not performed by spellcheckers and this is a workaround.
Start with Anaconda prompt: pip install googletrans
Requires: from googletrans import Translator
"""
translated = Translator().translate(string,src = "no", dest ="en")
return translated.text.lower()
def IsWordSameWithoutBlanks(string1:str, string2:str):
"""
Returns true/false whether lower case string1 equals lower string2 with space removed from both
"""
string1 = string1.replace(" ","").lower()
string2 = string2.replace(" ","").lower()
return ( string1 == string2 )