[ruby-de] string-diff

Die Optimisten inform at die-optimisten.net
Mo Mai 22 05:55:10 JST 2017


Hallo

Ich möchte Strings char ( byte-)weise vergleichen:

- Positionen der Unterschiede
- true/false pro Character
- hervorheben: gleich<<Ungleichheit>>gleich

zB:
a="abcXdef1..."
b="abcYdef2..."
=>     # Ergebnisse:
pos=[3,7]
diff=[true, true, true, false, true, true, true, false, true, true, true]
diffa="abc<<X>>def<<1>>..."
diffb="abc<<Y>>def<<2>>..."

Habe das (unschön) mit Schleifen (map+each) gemacht, es geht aber sicher 
einfacher.
Wie macht man das (bzw jeweils für sich genommen) effizient 
(Ruby-typisch, vielleicht nur mit Regex)?
# die Eingangs-Strings sind dann in einem Array

danke
Andreas



Mehr Informationen über die Mailingliste ruby-de