[megoldva - BlackY] zárójel közötti szöveg keresése

Fórumok

Sziasztok!

Adott egy szöveg, amiben zárójelek között vannak hivatkozások, akár több sorban is. Ezeket a zárójelben lévő szövegeket kellene sorban belerakni egy másik file-ba.
Elsődlegesen LibreOffice-ban kellene megoldani, de ha sokkal egyszerűbb, lehet awk+sed+cut vagy bármi ami linuxon elfut.

Példa szöveg:
( trey | 2014. január 20., hétfő - 11:05 )

Kernel

Linus néhány órával ezelőtt bejelentette a 3.13-as (zárójelben lévő szöveg) kernel végleges verziójának elérhetőségét. A változásokat tartalmazó patch az -rc8-hoz (zárójel több sorban) képest (zárójelben lévő szám: 1123123) egész kicsi, benne (még egy zárójel a soron belül)leginkább architektúrákkal és driverekkel kapcsolatos frissítések találhatók. A 3.13-as kernel végleges verziójának kiadásával a 3.14-es (zárójelben lévő . : ;) kernel beolvasztási ablaka természetesen megnyílt. Részletek a bejelentésben.

Előre is köszönöm.

Hozzászólások


importClass(Packages.com.sun.star.uno.UnoRuntime);
importClass(Packages.com.sun.star.text.XTextDocument);
importClass(Packages.com.sun.star.text.XText);
importClass(Packages.com.sun.star.text.XTextRange);
importClass(Packages.com.sun.star.frame.XModel);

oDoc = UnoRuntime.queryInterface(XModel,XSCRIPTCONTEXT.getInvocationContext());
if ( !oDoc )
  oDoc = XSCRIPTCONTEXT.getDocument();
xTextDoc = UnoRuntime.queryInterface(XTextDocument,oDoc);
xText = xTextDoc.getText();

var input = xText.getString();
var regex = /\((.+?)\)/g
var result = input.match(regex);
var resultText = '';
for(var i = 0; i < result.length; i++) {
	resultText += result[i];
	resultText += "\r\n";
}

xTextRange = xText.getEnd();
xTextRange.setString( resultText );

LibreOffice JavaScript macro, a nagy része automatikus generált (a saját a középső elkülönülő rész ill. a setString argumentuma), az egymásba ágyazott zárójelekkel nem tud mit kezdeni (az már nem reguláris nyelv).

Szerk.: A példaként megadott szövegből ezt hozza ki (beszúrja a doksi végére):


( trey | 2014. január 20., hétfő - 11:05 )

(zárójelben lévő szöveg)

(zárójel több sorban)

(zárójelben lévő szám: 1123123)

(még egy zárójel a soron belül)

(zárójelben lévő . : ;)

BlackY

Jogos, egy sort két helyen is elírtam (így jár az, aki nem elég lusta, és kipróbálja LO-ban, aztán bezárja és újra bepötyögi a sort a fórumba :) )

Szal: results helyett result, de ez már ok, ill. a length egy attribútum és nem függvény, így result[i].length - 1

BlackY