Почему вы используете регулярные выражения для этого? Регулярные выражения являются подходящим инструментом для некоторых заданий, но они используются слишком часто, когда обычная обработка старых строк поможет, возможно, с большей ясностью или эффективностью. Вот пример, реализованный на Python:
def matchCount(inputString, lettersToMatch, count) :
matches = []
wordsArray = inputString.split()
for word in wordsArray:
letterCounts = {}
for letter in word:
if letter in letterCounts:
letterCounts[letter] += 1
else:
letterCounts[letter] = 1
allCorrect = True
for letter in lettersToMatch:
if letter !in letterCounts:
allCorrect = False
if letterCounts[letter] != count:
allCorrect = False
if !allCorrect:
break
if allCorrect:
matches.append(word)
return matches