Split string with multiple-character delimiter

Posted on

Question :

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?

Asked By: ewok

||

Answer #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.']
Answered By: Dogbert

Answer #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']
Answered By: Austin Marshall

Answer #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.")
Answered By: Lycha

Leave a Reply

Your email address will not be published. Required fields are marked *