Форум сайта python.su
Здравствуйте, меня довольно давно мучает такая дилема, которая периодически возникает при работе с регулярными выражениями.
Вот допустим есть такой текст
“
ddd
sjhdjksjs
3343;:№(*!**№:?№
dhjsdsdsds
ddd
shdkhsdlkshdls
dkshdshd
3343;:№(*!**№:?№
dshdjsds
dshjds
ddd
ddd
sjhdjksjs
3343;:№(*!**№:?№
dhjsdsdsds
ddd
shdkhsdlkshdls
dkshdshd
3343;:№(*!**№:?№
dshdjsds
dshjds
ddd
”
из этого мне нужно вынуть все символы между первыми ddd,
то есть
“sjhdjksjs
3343;:№(*!**№:?№
dhjsdsdsds”
важно, что символы между ddd могут быть аболютно любыми.
То есть логика такая, находим первые ddd и выдергиваем абсолютно все символы до первых попавшихся ddd, кто-нибудь знает, как это решить с помощью регулярных выражений?
Офлайн
а чем s.split('ddd') не устраивает?
Офлайн
split устраивает, но мне просто интересно реально ли это сделать с помощью регулярных выражений?
Офлайн
реально, в регулярках то же есть split, и записывается так же
Офлайн
kvazarРеально. Что-то типа такого должно сработать:
split устраивает, но мне просто интересно реально ли это сделать с помощью регулярных выражений?
patt = re.compile('ddd(.+?)(?=ddd)', re.M|re.S)
dd_content_list = patt.findall(s)
Офлайн