Как с помощью регулярного выражения выделить строки с шаблоном EX** и соединить через запятую?
Как на python из строки mdsd_EX1999-inter_01.jpg nm, myname mdsd_EX1129-inter_02.jpg
оставить только, что начианется на ex (регистр не важен) далее 4 цифры и заканчивается расширением .jpg ?
По идеи эти строки должны быть в последовательности с разделителем (,)
Финал таков: EX999-inter_01.jpg,EX999-inter_02.jpg
Ответы (2 шт):
Автор решения: Egor
→ Ссылка
Советую изучить шпаргалку по регулярным выражениям или в конце концов официальный источник
import re
text = "mdsd_EX1999-inter_01.jpg nm, myname mdsd_EX1129-inter_02.jpg"
pattern = r'ex\d+-inter_\d+\.jpg'
matches = re.findall(pattern, text, re.IGNORECASE)
print(",".join(matches))
Автор решения: ksa
→ Ссылка
Финал таков:
EX999-inter_01.jpg,EX999-inter_02.jpg
Предложу такую регулярку...
const v = 'mdsd_EX1999-inter_01.jpg nm, myname mdsd_EX1129-inter_02.jpg'
const r = /[^,]*(?=ex\d{4})|(?<=\.jpg)[^,]*/gi
console.log(v.replace(r, ''))
Или вот так...
const v = 'mdsd_EX1999-inter_01.jpg nm, myname mdsd_EX1129-inter_02.jpg'
const r = /ex\d{4}.*?\.jpg/gi
console.log(v.match(r).join(','))