Регулярное выражение для сопоставления содержимого двойных скобок, содержащего другие группы двойных скобок.Python

Программы на Python
Anonymous
Регулярное выражение для сопоставления содержимого двойных скобок, содержащего другие группы двойных скобок.

Сообщение Anonymous »

Я хотел бы очистить необработанные данные из дампа Викисловаря.
Вот два варианта использования.
Многострочные:

Код: Выделить всё

[[Archivo:Diagrama bicicleta.svg|400px|miniaturadeimagen|'''Partes de una bicicleta:'''

[[asiento]] o [[sillín]], [[cuadro]]{{-sub|8}}, [[potencia]], [[puño]]{{-sub|4}}, [[cuerno]], [[manubrio]], [[telescopio]], [[horquilla]], [[amortiguador]], [[frenos]], [[tijera]], [[rueda]], [[rayos]], [[buje]], [[llanta]], [[cubierta]], [[válvula]], [[pedal]], [[viela]], [[cambio]], [[plato]]{{-sub|5}} o [[estrella]], [[piñón]], [[cadena]], [[tija]], [[tubo de asiento]], [[vaina]].]] + [[ something|of course]]
Одна строка:

Код: Выделить всё

[[File:Karwats.jpg|thumb|A scourge ''(noun {{senseno|en|whip}})'' [[exhibit#Verb|exhibited]] in a [[museum#Noun|museum]].]] + [[ something|of course]]
В обоих случаях мне нужно сопоставить только то, что находится внутри [[Archivo:xxx]] и [[File:xxx]], где оба могут быть многострочный оператор и включать вложенный код с двойными скобками, который тоже нужно убрать.
Это не первая моя попытка, ха-ха, я повторяю попытки регулярно, но не могу заставить это работать. только!
Вот мое текущее регулярное выражение, которое будет соответствовать всей строке (и в обоих примерах регулярное выражение должно оставлять в покое конечный + [[ что-то|конечно]]).

Код: Выделить всё

\[\[(?:Archivo|File):(?:.|\n)+?(?=\]\])\]\]$
Спасибо за любую подсказку :)

Примечание: я могу создать некоторый код без использования регулярного выражения, но хм , короче было бы найти эту волшебную закономерность!

Подробнее здесь: https://stackoverflow.com/questions/790 ... her-groups

Вернуться в «Python»