Jörg Sellmeyer, 23.11.2007 02:18: Hier habe ich mal die Offlinevariante vom Ü-Thread als Textvorlage genommen:
[...] 
Alles kopieren und das Programm starten;createCode()Var Text1$ = GetClip$()Var C& = &GetTickCountDeclare Text$WhileLoop 10000 Text$=translate$(Text1$,"-\n","") Text$=translate$(Text$,"|",chr$(1)) Text$=translate$(Text$,"!\n","!|") Text$=translate$(Text$,"?\n","?|") Text$=translate$(Text$,".\n",".|") Text$=translate$(Text$,"\n","") Text$=translate$(Text$,"|","\n")'ich würde hier wahrscheinlich der Optik halber sogar \n\n angeben, unwichtig... Text$=translate$(Text$,chr$(1),"|")WendPrint &GetTickCount - C&C& = &GetTickCountWhileLoop 10000 Text$ = Translate$(Text1$,"-\n","")'Trennstriche erschlagen While Match$("[!~?~.]\n",Text$) > "" Text$ = Translate$(Text$,$Match,Left$($Match,1) + "|")'alle Zeilenumbrüche mit Satzendezeichen zum Sichern umwandeln Wend Text$ = Translate$(Text$,"\n","")'alle Zeilenumbrüche raus Text$ = Translate$(Text$,$Match,Left$($Match,1) + "\n")'Zeilenumbrüche zurückschreibenWendPrint &GetTickCount - C&WaitInputEndIm Interpreter ist die obere Variante bei mir ca 2x schneller.

David Strutz, 23.11.2007 12:15: Ist klar, die Schleifen sind ins Native verlagert und es wird kein regexp genutzt. Darum wies ich ja auf diese einfacherer Methode hin.
Dies ist die Offlinevariante vom Thread [Match$ gegen einzelnes Abarbeiten (ein Match)].
©2006 XProfan.Com