У меня есть следующая строкаМатч между «<<» (регулярное выражение)
Все файлы | 100 < < 222 >>
И хотел бы, чтобы соответствовать числу между << >>
Как я могу сделать это?
До сих пор я попытался это выражение (?<<)(.*?)(?>>)
У меня есть следующая строкаМатч между «<<» (регулярное выражение)
Все файлы | 100 < < 222 >>
И хотел бы, чтобы соответствовать числу между << >>
Как я могу сделать это?
До сих пор я попытался это выражение (?<<)(.*?)(?>>)
Проблема заключается в том, что <
это специальный символ, который должен быть экранированы. Кроме того, ?
в первой и третьей группе является недействительным:
(\<\<)(?P<number>\d*?)(\>\>)
Кроме того, я назвал группу с номером и используется \d
, чтобы соответствовать цифрам вместо *
. Я протестировал его here.
Спасибо, что сработали – lasante23
Вы находитесь на точное решение +1. –
Попробуйте это,
In [1]: match = re.compile(r'<<(\d+)>>')
In [2]: match.findall('100 <<222>>')
Out[2]: ['222']
Regex модель
<<(\d+)>>
Вы можете попробовать (? <= <<)(.\d+)(?=>>) Это работает для меня. –