擅长:python、mysql、java
<p>以下是一个使用迭代器的解决方案,以防您计划处理大量文本:</p>
<pre class="lang-py prettyprint-override"><code>import re
def find_consonant_words(text: str):
vowels = set("aeiou")
for m in re.finditer('\S+', text):
w = m.group(0)
if w[0].lower() not in vowels:
yield w
string = "A very long text: a dog is a good pet"
for w in find_consonant_words(string):
print(w)
# get it all as a list
consonant_words = list(find_consonant_words(string))
print(consonant_words)
</code></pre>
<p>输出:</p>
<pre><code>very
long
text:
dog
good
pet
['very', 'long', 'text:', 'dog', 'good', 'pet']
</code></pre>