Gibt es eine Möglichkeit, Zeichen in einer einzelnen Zeile mithilfe regulärer Ausdrücke zu duplizieren?

Gibt es eine Möglichkeit, Zeichen in einer einzelnen Zeile mithilfe regulärer Ausdrücke zu duplizieren?

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

verwandte Informationen