Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.python > #4673

Re: [Python-de] string split

From "Sven R. Kunze" <srkunze@mail.de>
Newsgroups de.comp.lang.python
Subject Re: [Python-de] string split
Date 2017-02-22 18:07 +0100
Message-ID <mailman.4.1487783270.2669.python-de@python.org> (permalink)
References <CABTCcybjz2=TpMUvM7ur_obHfx2BGuoF4tohGuipgfrbonLcBA@mail.gmail.com> <562fb777-6db2-0457-2a4d-0d6d79588129@mail.de>

Show all headers | View raw


Ich fürchte eine 100%e Lösung gibt's nicht. Aber vielleicht hilft das ja:

last_chars = {word[-1] for word in text.split()}

Damit lässt sich schon mal abschätzen, welche Endungszeichen es gibt. 
Wenn du dir dann im Klaren bist, welche du alle akzeptieren möchtest:

Nimm dann dafür re.split https://docs.python.org/2/library/re.html#re.split

re.split('((?\W|\s)+)(?\.|\?|!)', text)

Bin grad auf dem Sprung, aber im Prinzip sollte es so gehen.

vG

Sven

On 22.02.2017 17:49, 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?
>
> Danke!
>
> Frank
>

Back to de.comp.lang.python | Previous | Next | Find similar


Thread

Re: [Python-de] string split "Sven R. Kunze" <srkunze@mail.de> - 2017-02-22 18:07 +0100

csiph-web