Seite 1 von 1

Regex ersetzen?

Verfasst: Mo, 19.03.2007 13:35
von Anubiz
hallo!

ich bekomm es nicht hin, beim ersetzen regexausdrücke zu verwenden, billiges bsp:

(n)\1 -> \1

mit der »großen bösen konkurenz« gehts :(

Verfasst: Sa, 24.03.2007 17:05
von Eia
Reguläre Ausdrücke sind in fast allen Implementationen anders. Ich kenne die Syntax von MS (wahrscheinlich die Konkurrenz?) nicht, daher meine Frage:
was möchtest Du wodurch ersetzen?
mfG

Verfasst: So, 25.03.2007 18:49
von Anubiz
glaub das nennt sich Subexpressions, weiß auch nich ob das zum regex standard gehört

also einen suchbegriff im "ersetzen" teil wieder verwenden

z.B. wenn man [a-z][A-Z] sucht (was idR ein Schreibfehler ist)
kann sowas zwar per regex suchen, aber nicht automatisch ein leerzeichen dazwischen setzen.

in word, ultra edit und vielen anderen sucht man nach ([a-z])([A-Z])

jede runde klammer kann man dann mit einem "\nummer der klammer" wieder einfügen, in diesem fall \1 \2

Verfasst: So, 25.03.2007 20:11
von Nanuk
Der Backreference-Parameter ist "&". Das funktioniert sowohl bei normalen Suchen als auch bei Regular Expressions.

Wenn Du also nach "Test" suchst und durch "Noch ein &" ersetzt, bekommst Du "Noch ein Test".
Wie das bei mehreren Rückbezügen funktioniert weiß ich aber auch nicht.

Verfasst: So, 25.03.2007 23:50
von Anubiz
thx

laut http://www.oooforum.org/forum/viewtopic ... ight=regex funktioniert das ganze gar nicht :(