Lichtgestalt: String komprimieren

Beitrag lesen

Hallo Ihr Balltreter,

kann mir jemand helfen einen String zu komprimieren? Also ich habe einen String, der kann ziemlich lang werden. Es handelt sich dabei um ein serialisiertes Array in JavaScript, z.B.:

a=s|class:tag=[:a=s|SUP:BODY=[:a=s|b:b=[:c=[:i=[:0=i|1:1=i|2]:j=[:0=[:0=i|7:1=i|4]]:k=[:0=i|0:1=i|0]:l=null|null:m=b|false]:d=[:i=[:0=i|1:1=i|1]:j=[:0=[:0=i|4:1=i|6]]:k=[:0=i|5:1=i|0]:l=null|null:m=b|false]:a=s|d]]:B=[:a=s|b:b=[:a=s|c]]:H1=[:a=s|b:b=[:c=[:i=[:0=i|1:1=i|0]:j=[:0=[:0=i|7:1=i|2]]:k=[:0=i|0:1=i|0]:l=null|null:m=b|false]:a=s|c]:.special=[:a=s|b:b=[:a=s|c]]:.special2=[:a=s|b:b=[:a=s|c]]]:P=[:a=s|b:b=[:a=s|c]]:SUP=[:a=s|b:b=[:c=[:i=[:0=i|1:1=i|0]:j=[:0=[:0=i|5:1=i|4]]:k=[:0=i|0:1=i|0]:l=null|null:m=b|false]:d=[:i=[:0=i|1:1=i|3]:j=[:0=[:0=i|5:1=i|4]]:k=[:0=i|0:1=i|0]:l=null|null:m=b|false]:e=[:i=[:0=i|1:1=i|1]:j=[:0=[:0=i|3:1=i|2]]:k=[:0=i|0:1=i|0]:l=null|null:m=b|false]:f=[:0=i|3]:a=s|d]]]:class=[:a=s|.special2:.special=[:a=s|b:b=[:c=[:i=[:0=i|1:1=i|3]:j=[:0=[:0=i|3:1=i|2]]:k=[:0=i|5:1=i|0]:l=null|null:m=b|false]:a=s|c]]:.special2=[:a=s|b:b=[:a=s|c]]]

Ist jetzt nur ein Beispiel. Der kann noch viel länger werden. Da ich den auch speichern und verschicken will, sollte er möglichst kurz werden. Gibt es vielleicht einen schlauen Algorithmus, da Muster (bzw. sich wiederholende Zeichengruppen) zu finden, die ich dann durch einzelne Zeichen ersetzen kann?

mfG, Lichtgestalt