我想对德国城市名称进行预处理,包括删除“ in”,“ der”等停用词(例如:FREIBURG IM BREISGAU-> FREIBURG BREISGAU)。我在python中使用正则表达式时正在执行此操作,因此我使用了re.sub()和re.search()。但是,当有多个连续的停用词(例如:KAISERSLAUTERN IN DER PFALZ)时,我遇到了问题。
我有一个名为stadt_STD的字符串作为输入。我正在显示一个仅带有停用词IN和DER的示例。
当我使用下面的代码行时,示例KAISERSLAUTERN IN DER PFALZ出现问题。第二个空格(在IN和DER之间)已经用于识别“ IN”,因此“ DER”不被识别为停用词。
stadt_STD = re.sub("( |^)(DER|IN)( |$)"," ",stadt_STD)