Toon posts:

[Regex] Positive lookbehind té ver terug

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi,

Mijn regex
code:
1
((?<=\\cell(\W|\s)|\\trowd(\W|\s)))(.*?)\\cell(\W|\s)
doet bijna wat ie moet doen. Heb alleen wat hulp nodig van een regex expert denk ik.

Als ik een lap tekst heb waar ik de regex op los laat, doet bij bijna goed z'n werk. Echter is het zo als er een \cell .......... \trowd ............ \cell voorkomt, dan gaat ie vanaf de \cell over de \trowd heen gaat en dus terug tot aan de \cell.

Heeft iemand enig idee en kan mij hierbij helpen? Ben radeloos inmiddels 8)7

Statix

p.s. Lap RTF code:
code:
1
.......\cell \pard\plain \ltrpar\ql \li0\ri0\widctlpar\intbl\aspalpha\aspnum\faauto\adjustright\rin0\lin0 \rtlch \af36\afs22\alang1025 \ltrch \f36\fs22\lang1043\langfe1033\cgrid\langnp1043\langfenp1033 \rtlch \af131\afs15 \ltrch \f131\fs15\lang2057\langfe1033\langnp2057\insrsid3343233\charrsid9713264 \trowd \irow0\irowband0\lastrow \ltrrow\ts11\trgaph108\trrh491\trleft1418\trftsWidth3\trwWidth8299\trftsWidthB3\trftsWidthA3\trautofit1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalt\clbrdrt\brdrnone \clbrdrl\brdrnone \clbrdrb\brdrnone \clbrdrr\brdrnone \cltxlrtb\clftsWidth3\clwWidth992\clshdrawnil \cellx2410\clvertalt\clbrdrt\brdrnone \clbrdrl\brdrnone \clbrdrb\brdrnone \clbrdrr\brdrnone \cltxlrtb\clftsWidth3\clwWidth3544\clshdrawnil \cellx5954\clvertalt\clbrdrt\brdrnone \clbrdrl\brdrnone \clbrdrb\brdrnone \clbrdrr\brdrnone \cltxlrtb\clftsWidth3\clwWidth3763\clshdrawnil \cellx9717\row \pard\plain \ltrpar\s15\ql \li0\ri0\widctlpar\tqc\tx4703\tqr\tx9406\faauto\rin0\lin0\itap0 \rtlch \af36\afs22\alang1025 \ltrch \f36\fs22\lang1043\langfe1033\cgrid\langnp1043\langfenp1033 \rtlch \af36 \ltrch \lang2057\langfe1033\langnp2057\insrsid529894 \par \footer \ltrpar \ltrrow\trowd \irow0\irowband0\lastrow \ltrrow\ts11\trgaph108\trrh570\trleft2410\trftsWidth3\trwWidth6946\trftsWidthB3\trftsWidthA3\trautofit1\trpaddl108\trpaddr108\trpaddfl3\trpaddfr3 \clvertalb\clbrdrt\brdrnone \clbrdrl\brdrnone \clbrdrb\brdrnone \clbrdrr\brdrnone \cltxlrtb\clftsWidth3\clwWidth3686\clshdrawnil \cellx6096\clvertalt\clbrdrt\brdrnone \clbrdrl\brdrnone \clbrdrb\brdrnone \clbrdrr\brdrnone \cltxlrtb\clftsWidth3\clwWidth283\clshdrawnil \cellx6379\clvertalt\clbrdrt\brdrnone \clbrdrl\brdrnone \clbrdrb\brdrnone \clbrdrr\brdrnone \cltxlrtb\clftsWidth3\clwWidth567\clshdrawnil \cellx6946\clvertalt\clbrdrt\brdrnone \clbrdrl\brdrnone \clbrdrb\brdrnone \clbrdrr\brdrnone \cltxlrtb\clftsWidth3\clwWidth2410\clshdrawnil \cellx9356\pard\plain \ltrpar\s16\ql \li0\ri0\widctlpar\intbl\tqc\tx4703\tqr\tx9406\faauto\rin0\lin0 \rtlch \af36\afs22\alang1025 \ltrch \f36\fs22\lang1043\langfe1033\cgrid\langnp1043\langfenp1033 \rtlch \af131\afs11 \ltrch \f131\fs11\insrsid529894\charrsid6384022 KPMG Staffing &amp; Facility Services B.V., \rtlch \af131\afs11 \ltrch \f131\fs11\insrsid2238945\charrsid6384022 ingeschreven bij het handelsregister in Nederland onder nummer\rtlch \af131\afs11 \ltrch \f131\fs11\insrsid529894\charrsid6384022  34153861\rtlch \af131\afs11 \ltrch \f131\fs11\insrsid2238945\charrsid6384022 , is lid van het KPMG-netwerk van zelfstandige ondernemingen die verbonden zijn aan \rtlch \af131\afs11 \ltrch \f131\fs11\insrsid529894\charrsid6384022 KPMG International, \rtlch \af131\afs11 \ltrch \f131\fs11\insrsid2238945\charrsid6384022 een Zwitserse\rtlch \af131\afs11 \ltrch \f131\fs11\insrsid529894\charrsid6384022  \rtlch \af131\afs11 \ltrch \f131\fs11\insrsid2238945\charrsid6384022 co\'f6peratie\rtlch \af131\afs11 \ltrch \f131\fs11\lang1024\langfe1024\noproof\insrsid529894\charrsid6384022 .\field\fldrslt \field\fldrslt \rtlch \af36\afs11 \ltrch \fs11\insrsid529894\charrsid6384022 \cell .....

[ Voor 72% gewijzigd door Verwijderd op 06-04-2007 09:46 ]


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 07:54

Janoz

Moderator Devschuur®

!litemod

Tja. Reguliere expressies zijn echt niet de heilige graal. In een groot gedeelte van de wat ingewikkelde problemen is een stackbased parser veel handiger of de enige* mogelijkheid. In dat geval gebruik je je reguliere expressie alleen voor het tokenizen.

* de enige mogelijkheid wanneer gekozen kan worden tussen Stack based parser of regexps

----
Net nog even je topic history bekeken en daarin zie ik dat je al een tijdje met dit probleem worstelt en dat je beweert al te weten wat tokenizen is. Ik vermoed echter dat dat niet het geval is. Stackbased parser is echter een wat makkelijkere term om naar informatie te zoeken. het tokenizen is hiervan een onderdeel. Misschien wordt het dan iets duidelijker.

[ Voor 34% gewijzigd door Janoz op 06-04-2007 10:05 ]

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'