Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.python > #4676
| From | Peter Otten <__peter__@web.de> |
|---|---|
| Newsgroups | de.comp.lang.python |
| Subject | Re: [Python-de] string split |
| Date | 2017-02-22 18:24 +0100 |
| Organization | None |
| Message-ID | <mailman.6.1487784337.2669.python-de@python.org> (permalink) |
| References | <CABTCcybjz2=TpMUvM7ur_obHfx2BGuoF4tohGuipgfrbonLcBA@mail.gmail.com> <o8khfs$ft0$1@blaine.gmane.org> |
Frank Grellert wrote: > Ich habe ein kniffliges Problem zu lösen: > Ein längerer Text soll in einzelne Sätze aufgespalten werden. Leider > enden nicht alle Sätze am Zeilenende und darüber hinaus enden auch > nicht alle mit einem Punkt. Der Text lautet: > > text = """Dies ist ein Auszug aus einem langen Text: Welche Zeichen > befinden sich am Satzende? > Manchmal ist es ein Ausrufezeichen! Häufig ist es ein Punkt. > """ > Hat jemand eine Idee? Vielleicht experimentierst Du mal mit regulären Ausdrücken, z. B.: >>> import re >>> text = """Dies ist ein Auszug aus einem langen Text: Welche Zeichen ... befinden sich am Satzende? ... Manchmal ist es ein Ausrufezeichen! Häufig ist es ein Punkt. ... """ >>> r = re.compile(r"(.+?[:.!?])(?:\s+|$)", re.DOTALL) >>> for satz in r.findall(text): ... print(repr(satz)) ... 'Dies ist ein Auszug aus einem langen Text:' 'Welche Zeichen\nbefinden sich am Satzende?' 'Manchmal ist es ein Ausrufezeichen!' 'Häufig ist es ein Punkt.' Allerdings: >>> text = "Vielleicht experimentierst Du mal mit regulären Ausdrücken, z. B.:" >>> for satz in r.findall(text): ... print(repr(satz)) ... 'Vielleicht experimentierst Du mal mit regulären Ausdrücken, z.' 'B.:'
Back to de.comp.lang.python | Previous | Next | Find similar
Re: [Python-de] string split Peter Otten <__peter__@web.de> - 2017-02-22 18:24 +0100
csiph-web