input: Write a python function to count the frequency of words in a given text and return the five most frequent words.
  assert count_frequent_words("Python is a high-level programming language. Python is dynamic.")==[('Python', 2), ('is', 2), ('a', 1), ('high-level', 1), ('programming', 1)]
  assert count_frequent_words("Hello world! Hello everyone. This is a test. Test this function.")==[('Hello', 2), ('test.', 2), ('world!', 1), ('everyone.', 1), ('This', 1)]
  assert count_frequent_words("One fish two fish red fish blue fish.")==[('fish', 4), ('One', 1), ('two', 1), ('red', 1), ('blue', 1)]
output: def count_frequent_words(text):
      from collections import Counter
      import re
      
      # Split the text into words and normalize to lowercase
      words = re.findall(r'\b\w+\b', text)
      
      # Count the frequency of each word
      word_counts = Counter(words)
      
      # Get the five most common words
      most_common_words = word_counts.most_common(5)
      
      return most_common_words