Split string with multiple-character delimiter

say I have the following string:

"Hello there. My name is Fred. I am 25.5 years old."

I want to split this into sentences, so that I have the following list:

["Hello there", "My name is Fred", "I am 25.5 years old"]

As you can see, I want to split the string on all occurrences of the string ". ", not any occurrence of either "." or " ". Python's str.split() will not work in this case because it will treat each character of the string as a separate delimiter, rather than the whole string as a multi-character delimiter. Is there a simple way to solve this problem?


Solution 1:

Works for me

>>> "Hello there. My name is Fr.ed. I am 25.5 years old.".split(". ")
['Hello there', 'My name is Fr.ed', 'I am 25.5 years old.']

Solution 2:

>>> "Hello there. My name is Fred. I am 25.5 years old.".rstrip(".").split(". ")
['Hello there', 'My name is Fred', 'I am 25.5 years old']

Solution 3:

You can use split function in regular expression library :

import re
re.split('\. ', "Hello there. My name is Fred. I am 25.5 years old.")