Ich möchte wissen, ob es eine Möglichkeit gibt, Zeichen, die Teil einer einzelnen Zeile sind, mithilfe regulärer Ausdrücke zu duplizieren, ohne die ganze Zeile zu duplizieren, und sie am Anfang einer Zeile hinzuzufügen. Auf diese Weise muss ich dies nicht manuell tun und riskiere, Fehler zu verursachen.
Ich möchte Werte wie diese ersetzen können
pl=100
pr=100
pj=100
bl=100
br=100
Mit diesem
pl=pl=100
pr=pr=100
pj=pj=100
bl=bl=100
br=br=100
Im Wesentlichen werden in diesem Fall die ersten drei Zeichen kopiert und am Zeilenanfang hinzugefügt.
Antwort1
Ich würde einfach diesen regulären Ausdruck verwenden:
^(...)(.*)$
Dies dient zum Duplizieren der ersten drei Zeichen. Wenn Sie alles bis einschließlich des ersten Zeichens "=" duplizieren möchten, verwenden Sie:
^([^=]=)(.)$
mit dem Ersetzungsstring für beide Fälle:
\1\1\2
Hier getestet:https://regex101.com/r/pK7xN3/1