Searchdescriptor Textcursor erweitern
Verfasst: Mi 4. Jun 2014, 18:16
Hallo zusammen,
da LO leider keine "look-around Assertions" für reguläre Ausdrücke unterstützt wollte ich das in einem Makro simulieren, bin aber kläglich gescheitert.
Der Regex-Ausdruck "(?<!e)i" würde alle "i" in einem Text finden, wenn sie nicht hinter einem "e" stehen.
Eine Suchschleife wäre:
mit oFound.getString() gibt's den gefundenen Text - aber wie komme ich an das/die Zeichen links/rechts davon? "oFound.goLeft(1,true oder false)" liefert immer einen leeren String.
da LO leider keine "look-around Assertions" für reguläre Ausdrücke unterstützt wollte ich das in einem Makro simulieren, bin aber kläglich gescheitert.
Der Regex-Ausdruck "(?<!e)i" würde alle "i" in einem Text finden, wenn sie nicht hinter einem "e" stehen.
Eine Suchschleife wäre:
Code: Alles auswählen
oDoc = thisComponent
oSuche = odoc.createsearchdescriptor()
oSuche.setsearchstring("i")
oFound = oDoc.findfirst(oSuche)
do while not IsNull(oFound)
' oFound.getString()= "i"
oFound.goLeft(1,true)
' oFound.getString()= ""
oFound = oDoc.findnext(oFound.end, oSuche)
loop