Portál AbcLinuxu, 12. května 2025 04:36
line = re.sub(r'(\s|„|“)([a-žA-Ž]+)-([a-záéíýúäôľščťžňďěřů])', r'\1\2\3', line)
Dakujem za pomoc
Řešení dotazu:
line = re.sub(r'(\s|„|“)([a-žA-Ž]+)-(?!li\b)([a-záéíýúäôľščťžňďěřů]+)', r'\1\2\3', line)
[a-žA-Ž]
, protoze v tech rozsazich jsou i jine znaky nez pismena ceske abecedy.. [a-záčďéíňóřšťúůýž]
regex.sub(r'(\b|\s|„|“)([[:alpha:]]+)-(?!li\b)([[:lower:]]+)', r'\1\2\3', line)mi při správném nastavení locale připadá trochu pokrokovější, resp. odpovědnost za nevynechání žádného znaku padá na někoho jiného :) P.S. Nezkoušel jsem :D
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.