Laden...

RegEx beschleunigen, Alternativen?

Erstellt von tomaten vor 16 Jahren Letzter Beitrag vor 16 Jahren 2.347 Views
tomaten Themenstarter:in
402 Beiträge seit 2005
vor 16 Jahren
RegEx beschleunigen, Alternativen?

[EDIT]Abgeteilt von Brauche Hilfe bei einem RegEx![EDIT]

Hallo zusammen.

Mein Problem passt zwar nur indirekt hier her, wollte aber keinen extra Thread öffnen.

Ich habe eine Foren-Software (Mono-Version des AspNetForum) und dort wird z.B. BB-Code mit RegEx ersetzt. Wenn ich die Formatierung des Body rausnehme (also eben genannte Funktion) ist das Forum richtig schnell. Sobald ich die Formatierung reinnehme ist mein Server richtig gut ausgelasstet (100%) und dauert merkliche Zeit und das für simple 25 Posts.

Meine Frage: gibt es schnellere Alternativen zu RegEx oder kann man das irgendwie beschleunigen?

Original Source

Dort die Funktion "PerformUserTransforms".

Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.

915 Beiträge seit 2006
vor 16 Jahren

Hrm, normal sollte RegEx relativ gut durchlaufen benutze es sogar in einer Datenbank zur Telefonnummernnormalisierung von über 60.000 Datensätze. Allerdings hatte ich das für BB-Code soweit ich mich noch an meine Internetseiten-Programmierkentnisse erinnere (wers glaubt..) als JavaScript verpakt - es hatte irgend einen Grund...

Lies dir das mal dazu durch.

Wie vernichtet stand Andreas unter den flammenden Augen seiner Kunden.
Ihm war's, als stünde des Schicksals dunkle Wetterwolke über seinem Haupte X(

tomaten Themenstarter:in
402 Beiträge seit 2005
vor 16 Jahren

Also mit Javascript kann ja nicht die Lösung sein.

Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.

49.485 Beiträge seit 2005
vor 16 Jahren

Hallo tomaten,

also man kann eine BBCode-Ersetzung mit Regex sicher sehr performant realisieren.

Warum das bei PerformUserTransforms nicht der Fall ist, habe ich mir nicht angeschaut. Das müsstest du dann mal selber gucken.

JavaScript halte ich dabei nicht für nötig und würde es auch nicht verwenden.

herbivore

tomaten Themenstarter:in
402 Beiträge seit 2005
vor 16 Jahren

Ich habe jetzt mal alles unnötige aus der transform.txt rausgeschmissen was die Sache erträglicher macht. Du musst aber immer noch 35 Regex (übriggebliebene Einträge/2) x 25 Beiträge pro angezeigte Threadseite rechnen (875 Regex). Scheint doch noch einiges an CPU zu brauchen.

Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.

49.485 Beiträge seit 2005
vor 16 Jahren

Hallo tomaten,

das wbb2-Forum benutzt deshalb einen Cache für die (aktuellen) Beiträge.

herbivore

tomaten Themenstarter:in
402 Beiträge seit 2005
vor 16 Jahren

Hallo. Das macht dieses Forum auch, aber vor dem Formatieren. Evtl. sollte ich das Formatieren mal "umlegen". 😁 Auf diesem Source basieren ja auch der Community Server und seine Ableger.

Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.

tomaten Themenstarter:in
402 Beiträge seit 2005
vor 16 Jahren

Ich habe jetzt einen BB-Code Parser gefunden, der zwar auch RegEx benutzt aber richtig richtig schnell ist:

BB-Code Parser

Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.