# Expresión regular con guión medio en una clase de caracteres
# https://es.stackoverflow.com/q/155042/127
import re
texto = "cadena-ejemplo"
regex = r"^[a-zA-Z0-9]+(?:-[a-zA-Z0-9]+)*$"
resultado = re.search( regex, texto )
if (resultado):
print( "Coincidió con: " + resultado.group() );
IyBFeHByZXNpw7NuIHJlZ3VsYXIgY29uIGd1acOzbiBtZWRpbyBlbiB1bmEgY2xhc2UgZGUgY2FyYWN0ZXJlcwojIGh0dHBzOi8vZXMuc3RhY2tvdmVyZmxvdy5jb20vcS8xNTUwNDIvMTI3CgppbXBvcnQgcmUKCnRleHRvID0gImNhZGVuYS1lamVtcGxvIgpyZWdleCA9IHIiXlthLXpBLVowLTldKyg/Oi1bYS16QS1aMC05XSspKiQiCgpyZXN1bHRhZG8gPSByZS5zZWFyY2goIHJlZ2V4LCB0ZXh0byApCgppZiAocmVzdWx0YWRvKToKCXByaW50KCAiQ29pbmNpZGnDsyBjb246ICIgKyByZXN1bHRhZG8uZ3JvdXAoKSApOwoK