【发布时间】:2014-05-24 18:12:05
【问题描述】:
我有一个类似的德国 unicode 字符串
text = u'Und Wenn die Psychoanalytiker, von den d\xfcmmsten bis zu den kl\xfcgsten, im allgemeinen feindselig auf dieses Buch reagiert haben, aber eher defensiv als aggressiv, so liegt das nat\xfcrlich nicht allein am Inhalt, sondern an dieser Str\xf6mung, die noch gr\xf6\xdfer werden wird, denn die Leute haben immer mehr die Nase voll davon, sich sagen zu lassen "Papa, Mama, \xd6dipus, Kastration, Regression" und haben es satt f\xfcr die Sexualit\xe4t im allgemeinen - und ihre im besonderen - ein wirklich bl\xf6dsinniges Bild angeboten zu bekommen. Die Psychoanalytiker sollten, wie man sagt, die "Massen" ber\xfccksichtigen, die kleinen Massen.'
其中还包含Ü Ö Ä 和其他德国特殊字符。我的目标是得到一个只包含以大写字母开头的单词的字符串,如下所示:
result = 'Und Wenn Psychoanalytiker Buch Inhalt Str\xf6mung Leute ...'
我试过了
pattern = r'(\b[^A-Z]+\b)'
re.sub(pattern, '', text)
但我对正则表达式完全陌生
【问题讨论】:
-
好的,发生了什么?我建议你在regex101.com/#python 上玩一玩