# coding=utf8
# the above tag defines encoding for this document and is for Python 2.x compatibility
import re
regex = r"\s*(\.{2,}|[:,.](?!(?<=ό,)τι)(?!(?<=\d.)\d))(?!\s*<br\s*/>)\s*"
test_str = ("this ... ---\n"
"-----------------..............\n"
"Composition:80% Polyamide, 15% Elastane, 5% Wool.\n"
"Side length 50.5 cm <---- THIS SHOULDN'T BE MATCHED\n"
"Value 4,500 <---- THIS SHOULDN'T BE MATCHED EITHER\n\n"
"ό,τι <---- THIS IS A FIXED PHRASE IN GREEK AND THEREFORE SHOULDN'T BE MATCHED\n"
"Comfort and timeless design characterize the Puma Smash V2 made of suede leather. They can be worn all the time ,being a unique choice for those who want to stand out .Made of rubber.<br />- Softfoam floor<br />- Binding with laces\n\n"
"Specs:<br />• Something<br /><br />• Something else<br />• One more\n\n"
"Children's Form Champion<br /><br />Children's set that will give a comfortable feeling for endless hours of play.<br />It consists of a cardigan and trousers ,made of soft fabric and have rib cuffs and legs for a better fit.<br /><br />• Normal fit<br /><br />• Cardigan :Rib cuffs, zippers throughout length, high neck, Champion logo <br /> <br />• Pants: Elastic waist with drawstring, ribbed legs, Champion logo")
subst = "$1 "
# You can manually specify the number of replacements by changing the 4th argument
result = re.sub(regex, subst, test_str, 0)
if result:
print (result)
# Note: for Python 2.7 compatibility, use ur"" to prefix the regex and u"" to prefix the test string and substitution.
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Python, please visit: https://docs.python.org/3/library/re.html