¿Cómo puedo reemplazar múltiples espacios con un solo espacio?

Bueno, estoy buscando una función que reduzca los caracteres del espacio múltiple.' ' en una cuerda

Por ejemplo para cadenas dado:

s="hello__________world____!"

La función debe volver."hello_world_!"

En Python podemos hacerlo vía regexp simplemente como:

re.sub("\s+", " ", s);

Respuestas a la pregunta(6)

Su respuesta a la pregunta