We all love the future president (or Führer or duce or sōtō as he could find them more fitting) donald trump, but we might fear that some of his many fans like John Miller or John Barron are not making him justice, sounding too much like their (and our as well, of course!) hero and thus risking to compromise him.

For this reason we need to create a function to detect the original and unique rythm of our beloved leader, typically having a lot of extra vowels, all ready to fight the estabilishment.

The index is calculated based on how many vowels are repeated more than once in a row and dividing them by the total number of vowels a petty enemy of America would use.

For example:
```python
trump_detector("I will build a huge wall")==0 #definitely not our trump: 0 on the trump score
trump_detector("HUUUUUGEEEE WAAAAAALL")==4 #4 extra "U", 3 extra "E" and 5 extra "A" on 3 different vowel groups: 12/3 make for a trumpy trumping score of 4: not bad at all!
trump_detector("listen migrants: IIII KIIIDD YOOOUUU NOOOOOOTTT")==1.56 #14 extra vowels on 9 base ones
```
**Notes:** vowels are only the ones in the patriotic group of "aeiou": "y" should go back to Greece if she thinks she can have the same rights of true American vowels; there is always going to be at least a vowel, as silence is the option of coward Kenyan/terrorist presidents and their friends.

Round each result by two decimal digits: there is no place for small fry in Trump's America.

*Special thanks for [Izabela](https://www.codewars.com/users/ijelonek) for support and proof-reading.*

Source: codewars | Difficulty: EASY
Tags: String algorithms

Starter code: def trump_detector(trump_speech):
	

Solutions:
import re

def trump_detector(ts):
	x = re.findall('([aeiou])(\\1*)', ts, re.I)
	y = [len(i[1]) for i in x]
	return round(sum(y) / len(y), 2)


import re

def trump_detector(trump_speech):
	lst = [len(tup[1]) for tup in re.findall('([aeiou])(\\1*)', trump_speech, re.I)]
	return round(sum(lst) / len(lst), 2)


from itertools import groupby
from statistics import mean

def trump_detector(trump_speech):
	return round(mean((len(list(l)) - 1 for (k, l) in groupby(trump_speech.lower()) if k in 'aeiou')), 2)


import re

def trump_detector(s):
	r = re.findall('a+|e+|i+|o+|u+', s, re.I)
	return round(sum((len(i) - 1 for i in r)) / len(r), 2)


import re

def trump_detector(trump_speech):
	matches = re.findall('([aeiou])(\\1*)', trump_speech.lower(), flags=re.I)
	if matches:
		return round(sum((len(m[1]) for m in matches)) / len(matches), 2)
	return 0


import re
from statistics import mean
trump_detector = lambda s: round(mean(map(len, re.findall('(a+|e+|i+|o+|u+)', s.lower()))) - 1, 2)


from itertools import groupby

def trump_detector(trump_speech):
	return round(sum((len(''.join(x)) - 1 for (i, x) in groupby(trump_speech.lower()) if i in 'aeiou')) / len([i for (i, _) in groupby(trump_speech.lower()) if i in 'aeiou']), 2)


import re
trump_detector = lambda trump_speech: (lambda lst: round(sum(lst) / len(lst), 2))([len(t[1]) for t in re.findall('([aeiou])(\\1*)', trump_speech, re.I)])


from re import findall
trump_detector = lambda t: round(sum(map(lambda a: len(a[1]), findall('([aeiou])(\\1*)', t, 2))) / len(findall('([aeiou])(\\1*)', t, 2)), 2)


from re import findall, IGNORECASE

def trump_detector(trump_speech):
	final = [len(c[1]) for c in findall('([aeiou])(\\1*)', trump_speech, IGNORECASE)]
	return round(sum(final) / len(final), 2)