amolip: RegEx: Once-only subpattern

Beitrag lesen

Hallo seth,

meintest wahrscheinlich (?>fo* )

Ja, war Tippfehler.

ja, ich stimme dir zu, dass es zunaechst mal irgenwie bloed klingt, aber eigentlich sind sie gar nicht so schlecht

Das höre ich schon mal gerne, ich hatte eher befürchtet du fällst vor Schreck vom Hocker ;-)
Es ist doch wohl so, dass Begrifflichkeiten oftmals eine reine Gewöhnungssache sind. Ich kenne das von mir, ich stoße auf einen Begriff, der mich zunächst irritiert, ein wesentlicher Grund ist dabei, dass ich nicht verstehe worum es bei diesem Begriff überhaupt geht. Wenn ich das dann aber irgendwann kapiert habe, verwende ich ihn mit der größten Selbstverständlichkeit. Und wenn ich ehrlich bin, gibt es genügend Begrifflichkeiten, mit denen ich freizügig um mich werfe, ohne je darüber nachgedacht zu haben, ohne sie wirklich verstanden zu haben.

in perldoc perlre steht zudem:

"An 'independent' subexpression, one which matches the substring that a standalone pattern would match if anchored at the given position, and it matches nothing other than this substring."

Ich verstehe die Erklärung, ich stimme der Erklärung zu. Mir gefällt der Begriff "unabhängig", weil damit ganz nebenbei an einen zentralen Aspekt eines Musters erinnert wird, nämlich dass ein Teilmuster immer in Wechselwirkung mit den anderen Teilmustern des Gesamtmusters zu sehen ist, also gerade nicht unabhängig ist. Mir fällt auf, dass 'independent' in Hochkommata steht, denn vollkommene Unabhängigkeit gibt es natürlich nicht, aber da muss man jetzt aufpassen, dass man keine Haarspalterei betreibt.
Ich werde den Begriff "unabhängig" in der Erklärung verarbeiten, ob er in die Begrifflichkeit einfliessen muss? - ich finde nicht unbedingt.

allerdings fehlt bei dem "bild" dann imho noch die unabhaengigkeit. aber "unabhaengiges einbahnmuster" oder "autonome einbahngruppe" (hihi) gefallen mir spontan eher nicht.

Ich werde vermutlich aus zwei Gründen auf "unabhängig" in der Begriffsdefinition verzichten.
1. "unabhaengiges einbahnmuster"
Ist das nicht irgendwie doppelt gemoppelt? Müsste es dann nicht auch ein "abhängiges Einbahnmuster" geben.
2. "autonome einbahngruppe" (hihi) gefallen mir spontan eher nicht
Eben – also der trivialste aller Gründe, ich finde keinen "schönen" Begriff

warum moechtest du es ueberhaupt unbedingt uebersetzen?

Nein – unbedingt nicht, genau genommen ist es ein Mischmasch. Für Subpattern nehme ich beispielsweise "Untermuster", Backtracking dagegen ist Backtracking. Das schöne an der englischen Sprache ist ja, das man Dinge kurz, prägnant und elegant ausdrücken kann. Mit elegant meine ich durchaus das bildhafte – und Backtracking ist einfach ein anschaulicher Begriff. Wie sollte ich "Backtracking" auch nur halbwegs elegant ins Deutsche übersetzen?

schreibst du einen artikel? fuer wen?

Ein Buch, Zielgruppe sind Programmierer von denen ich erwarte, dass sie hinreichend Englisch können, das ist also nicht der Grund für das Übersetzen bestimmter Begriffe.

vielleicht kann ich dich ja doch noch zur verwendung des englischen begriffs ueberreden oder gar davon ueberzeugen.

Naheliegend wäre es, konsequent die englische Terminologie zu verwenden. Aber, es gilt eben auch für das Englische, nur weil sich ein Fachbegriff eingebürgert hat, muss er noch lange nicht gut gewählt sein und zweitens gibt es eben auch im Englischen für viele "Phänomene" keine eigentlichen Begrifflichkeiten.

Nimm die Begriffe "greedy" und "lazy", die passen nicht zueinander. "greedy" finde ich phantastisch, ich spreche hier von "gierig". Aber was ist quasi das Gegenteil von "gierig", ich bezeichne das als "genügsam". Ganz glücklich bin ich damit nicht, weil "genügsam" vielleicht einfach nicht so "prägnant" wie "gierig" ist. Gut – "lazy" ist kein feststehender Fachbegriff, wird aber oft verwendet. Würde ich im Englischen bleiben, stünde ich letztendlich vor denselben Problemen wie im Deutschen, ich bräuchte etwas "Griffiges" für das Gegenteil von "greedy".

Nimm ein "non-capturing subpattern" (?: ... ). Ein "non-capturing subpattern", ein "nicht einfangendes Untermuster" – egal ob im englischen oder deutschen – furchtbar.
Ich definiere hier den Begriff "Bereichsmuster" und grenze es vom Begriff "Untermuster" ab, für mich ist es kein spezielles Untermuster, sondern etwas eigenständiges. "Bereich" soll dabei ausdrücken, dass es um die Eingrenzung eines Wirkungsbereiches, beispielsweise für einen Quantifizierer, geht. Macht auch ein Untermuster, ist schon klar, aber die eigentliche Funktion eines Untermusters ist eine ganz andere als die eigentliche Funktion eines Bereichsmusters.

Der Punkt ist, ich setzte mich oftmals über die Terminologie hinweg und definiere eigene und neue Begrifflichkeiten – und das traue ich mich eher im Deutschen als im Englischen – schließlich will ich keinen Ärger mit "Friedl" bekommen ;-)

In der RegEx-Sprache über die ich schreibe gibt es das "Einbahnmuster" überhaupt nicht, deswegen hatte ich mich noch nicht darum gekümmert. Aber jetzt hat sich bei einem Fallbeispiel die Möglichkeit ergeben, diese Funktionalität wenigstens kurz vorzustellen – vielleicht lasse ich es einfach weg.

Gruß Uwe