re.sub () отрицательный взгляд назад + отрицательный взгляд вперед

Удалите все вхождения ' из строки, кроме тех случаев, когда слово заканчивается на s, если слово заканчивается на s' или 's, остается '. КАЖДОЕ другое вхождение удаляется.

Пример:

Andrea's -Stays as is
Kids' - stays as is
'Kids' --> Kids
Ki'd's' --> Kids'

Что я придумал до сих пор:

\'(?!s ) 

это соответствует первому примеру и игнорирует его.

вот это работает

У меня проблемы с остальным


person KameeCoding    schedule 09.05.2015    source источник
comment
Ваш последний пример не соответствует вашему описанию. Второй апостроф стоит перед s, а последний - после s, поэтому их не следует удалять.   -  person Barmar    schedule 09.05.2015
comment
Перед 's? Вы имеете в виду перед s?   -  person Stefan Pochmann    schedule 09.05.2015
comment
@Barmar обновленный пример   -  person KameeCoding    schedule 09.05.2015


Ответы (1)


'([^'\s]+)'

Вы можете попробовать это. Заменить на \1. См. Демонстрацию.

https://regex101.com/r/oF9hR9/2#python

person vks    schedule 09.05.2015