Método subn en expresiones regulares de Python

El método subn realiza el reemplazo de caracteres, especificados en la expresión regular y devuelve una tupla, compuesta por el resultado y la cantidad de reemplazos realizados. En el primer parámetro del método especificamos la expresión regular que buscaremos, en el segundo parámetro - por qué la reemplazamos. En el tercer parámetro especificamos la cadena. En el cuarto parámetro opcional especificamos el número de reemplazos:

pythonre.subn(lo que reemplazamos, por lo que reemplazamos, dónde reemplazamos, [número de reemplazos])

Supongamos que tenemos una cadena:

pythontxt = '123 456 789'

Apliquemos el método subn a nuestra cadena:

pythontxt = '123 456 789'
res = re.subn('\d', '!', txt)

print(res)

Después de ejecutar el código, se mostrará la cadena modificada y la cantidad de reemplazos realizados en ella:

python('!!! !!! !!!', 9)
Задание 1

Dada la cadena:

pythontxt = 'aaa bbb 123 www'

Reemplace en ella todas las letras que se repitan varias veces seguidas y averigüe cuántos reemplazos se realizaron.

Задание 2

Dada la cadena:

pythontxt = 'aaa @@@ 123w'

Reemplace en ella todos los caracteres que NO sean letras ni dígitos, que se repitan varias veces seguidas y averigüe cuántos reemplazos se realizaron.