- ВКонтакте
- РћРТвЂВВВВВВВВнокласснРСвЂВВВВВВВВРєРСвЂВВВВВВВВ
- РњРѕР№ Р В Р’В Р РЋРЎв„ўР В Р’В Р РЋРІР‚ВВВВВВВВРЎР‚
- Viber
- Skype
- Telegram
Как работать с последовательностями символов в регулярных выражениях?
Задача найти в строке (CDCDCDFFCDFFFCD) последовательность символов, в которой будет ровно две подстроки "CD" и я не понимаю как работает синтаксис регулярных выражений
print(re.findall('(СD)+', s))
Этот код выводит "CD", хотя в приведенной выше строке "CD" повторяется подряд 3 раза, а скобки вроде как объединяют, то что внутри них написано.
Как работать с последовательностями символов в регулярных выражениях?
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Если я вас правильно понял:
import re
string = "CDCDCDFFCDFFFCD"
print(re.findall('(?:CD){2}', string))
Вывод:
['CDCD']
- Используем "non-capturing group"
(?:)
, чтобы можно было группировать символы без того, чтобы они попадали в виде этой группы в итоговую выдачу - Задаём нужное количество повторений для группы с помощью фигурных скобок
{}