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.")