2015-12-16 8 views
0

Я пытаюсь найти все строки неотрицательного четного числа a, за которым следует нечетное число b: aab, aaaabbb, aabbb ...Как найти все строки неотрицательных четных чисел и нечетного числа

[w for w in words.words() if re.search('(aa|bb)$',w)][:5] 

Действительно ли какие-либо подсказки, которые я могу использовать?

+0

Пожалуйста, добавьте тестовый пример для него. –

+0

Какое отрицательное число выглядит? –

ответ

1

Как о поиске всех a+b+ подстрок, а затем фильтровать их проверять, сколько a s и b s есть в матче:

>>> import re 
>>> s = "ab, aab, abb, aaaabbb, aabbb, test, ab, aabb" 
>>> [item for item, a, b in re.findall(r'((a+)(b+))', s) 
    if len(a) % 2 == 0 and len(b) % 2 != 0] 
['aab', 'aaaabbb', 'aabbb'] 
2

Даже есть 2n и Odds 2n+1, так что вы можете реализовать его как это: \b(aa)*b(bb)*\b

Check This

Смежные вопросы