import re
sentences = [ """"'This has punctuation, and it's hard to remove. ?" """ ,
"Did you see Cress' haircut?." ,
"This 'thing' hasn't a really bad habit, you know?." ,
"'I bought this for $30 from Best Buy it's. What a waste of money! The ear gels are 'comfortable at first, but what's after an hour." ]
for s in sentences:
# Remove the specified characters
new_s = re .sub ( r"""["?,$!]|'(?!(?<! ')[ts])""" , "" , s)
# Deal with the final dot
new_s = re .sub ( r"\. " , " ." , new_s)
print ( new_s)
aW1wb3J0IHJlCgpzZW50ZW5jZXMgPSBbIiIiIidUaGlzIGhhcyBwdW5jdHVhdGlvbiwgYW5kIGl0J3MgaGFyZCB0byByZW1vdmUuID8iICIiIiwKCQkJICJEaWQgeW91IHNlZSBDcmVzcycgaGFpcmN1dD8uIiwKCQkJICJUaGlzICd0aGluZycgaGFzbid0IGEgcmVhbGx5IGJhZCBoYWJpdCwgeW91IGtub3c/LiIsCgkJCSAiJ0kgYm91Z2h0IHRoaXMgZm9yICQzMCBmcm9tIEJlc3QgQnV5IGl0J3MuIFdoYXQgYSB3YXN0ZSBvZiBtb25leSEgVGhlIGVhciBnZWxzIGFyZSAnY29tZm9ydGFibGUgYXQgZmlyc3QsIGJ1dCB3aGF0J3MgYWZ0ZXIgYW4gaG91ci4iXQoJCQkgCmZvciBzIGluIHNlbnRlbmNlczoKCSMgUmVtb3ZlIHRoZSBzcGVjaWZpZWQgY2hhcmFjdGVycwoJbmV3X3MgPSByZS5zdWIociIiIlsiPywkIV18Jyg/ISg/PCEgJylbdHNdKSIiIiwgIiIsIHMpCgkKCSMgRGVhbCB3aXRoIHRoZSBmaW5hbCBkb3QKCW5ld19zID0gcmUuc3ViKHIiXC4iLCAiIC4iLCBuZXdfcykKCXByaW50KG5ld19zKQo=