Post by just me » 26 Sep 2018, 01:16
RegEx-Kurzübersicht:
Greed (Gier): Standardmäßig versuchen die Quantoren *, ?, +, und {min,max}, so viele Zeichen wie möglich einzubeziehen, um eine Übereinstimmung zu finden. Um dieses Verhalten auf so wenig Zeichen wie möglich zu begrenzen, muss nach den Quantoren ein Fragezeichen eingefügt werden. Zum Beispiel würde das Suchmuster <.+> (also ohne Fragezeichen) bedeuten: "suche nach einer Zeichenkette, die sich zusammensetzt aus <, mindestens einem Zeichen und >". Um zu verhindern, dass das Suchmuster mit der kompletten Zeichenkette <em>text</em> übereinstimmt, ist es notwendig, nach dem Pluszeichen ein Fragezeichen einzufügen: <.+?>. Die Suche stoppt bereits beim ersten '>' und führt dazu, dass das erste HTML-Tag <em> die gefundene Übereinstimmung ist.
Alternativ kannst Du auch die Option
U nutzen, wenn sich der gesamte Suchbegriff 'ungierig' verhalten soll:
Code: Select all
RegExMatch(erg, "U)<name locale=""de"">(.*)</name>", gis)
[url=https://ahkde.github.io/docs/misc/RegEx-QuickRef.htm][b]RegEx-Kurzübersicht[/b][/url]:
[quote][b]Greed (Gier)[/b]: Standardmäßig versuchen die Quantoren *, ?, +, und {min,max}, so viele Zeichen wie möglich einzubeziehen, um eine Übereinstimmung zu finden. Um dieses Verhalten auf so wenig Zeichen wie möglich zu begrenzen, muss nach den Quantoren ein Fragezeichen eingefügt werden. Zum Beispiel würde das Suchmuster <.+> (also ohne Fragezeichen) bedeuten: "suche nach einer Zeichenkette, die sich zusammensetzt aus <, mindestens einem Zeichen und >". Um zu verhindern, dass das Suchmuster mit der kompletten Zeichenkette <em>text</em> übereinstimmt, ist es notwendig, nach dem Pluszeichen ein Fragezeichen einzufügen: <.+?>. Die Suche stoppt bereits beim ersten '>' und führt dazu, dass das erste HTML-Tag <em> die gefundene Übereinstimmung ist.[/quote]
Alternativ kannst Du auch die Option [c]U[/c] nutzen, wenn sich der gesamte Suchbegriff 'ungierig' verhalten soll:
[code]RegExMatch(erg, "U)<name locale=""de"">(.*)</name>", gis)[/code]