diff --git a/exercises/word-count/example.py b/exercises/word-count/example.py index 995a7d6ca83..9e93a159111 100644 --- a/exercises/word-count/example.py +++ b/exercises/word-count/example.py @@ -1,8 +1,10 @@ +import re + from collections import Counter +WORDS = re.compile("[a-z0-9]+(['][a-z]+)?") + + def word_count(text): - def replace_nonalpha(char): - return char.lower() if char.isalnum() else ' ' - text = ''.join(replace_nonalpha(c) for c in text) - return Counter(text.split()) + return Counter(word.group(0) for word in WORDS.finditer(text.lower()))