Wyrażenia regularne - pobieranie tagów wiersz po wierszu, a nie całość

0

Mam taką strukturę.

<entry text="1">
<entry text="11">
<entry text="111"/>
<entry text="112"/>
</entry>
<entry text="12"/>
<entry text="13">
<entry text="131"/>
<entry text="132"/>
<entry text="133"/>
</entry></entry>

Jeśli dany entry nie jest zakończony w tej samej linijce to znaczy, że jest rodzicem. Każdy entry zakończony "/> to ostatnie dziecko. Użyte liczby zachowują strukturę drzewa i zależności między rodzicami i dziećmi.

Chcę w notepadzie++ wyciągnąc wszystkie dzieci. Co bym nie stworzył wyszukuje i zaznacza mi całość, czyli od pierwszego <entry do ostatniego wpisu, czyli 133"/>, a nie linijka po linijce
Moje zapytanie wygląda tak:
(<entry text=".*" />)$

0

Mi to wyrażenie działa.

user image

0

powinieneś zmniejszyć zachłanność czyli dodać ? po .*, ale to i tak będzie działało tylko na "jeden poziom" i już nie znajdziesz tak "dzieci dzieci". musiałbyś zliczać otwarte tagi, a tego raczej nie zrobisz wyrażeniem regularnym w notepadzie. prościej napisać prosty, parolinijkowy program który przeparsuje ten XML i wypluje to w takiej formie jak chcesz

a jeżeli pasuje Ci to co dostał "Rev" to po prostu odznacz tryb wieloliniowy

1 użytkowników online, w tym zalogowanych: 0, gości: 1