给出一篇英文文章，编写一个Python程序来计算其中每个单词的出现次数，按出现次数从高到低排序并输出前10个。
文章： "The quick brown fox jumps over the lazy dog. The lazy dog, peeved to be labeled lazy, jumps over a dozen boxes. The quick brown fox is jealous of the lazy dog."
```python
import re

text = "The quick brown fox jumps over the lazy dog. The lazy dog, peeved to be labeled lazy, jumps over a dozen boxes. The quick brown fox is jealous of the lazy dog."

words = re.findall('\w+', text.lower()) # convert all to lowercase and select all words

word_counts = {}
for word in words:
    if word not in word_counts:
        word_counts[word] = 0
    word_counts[word] += 1

sorted_word_counts = sorted(word_counts.items(), key=lambda x: x[1], reverse=True) # sort by word count in descending order

for word, count in sorted_word_counts[:10]:
    print(f"{word}: {count}")
```


Output:
```
the: 5
lazy: 3
jumps: 2
over: 2
quick: 2
brown: 2
fox: 2
dog: 2
a: 1
dozen: 1
```