DataFox
Erfahrenes Mitglied
Hallo
Ich habe ein geniales Pattern:
Dieses findet ein Frame-Element in einem Frameset, und darin den Wert des name-Attributes.
Aber nur, wenn der Wert des name-Attributes in double- oder singlequoes stht. Ansonsten findet die RegExp nichts.
Aber genau das ist das Problem, denn es kommt vor, das etwas NICHT in double- oder singlequotes steht. Den Fall muss ich mit abdecken, und das habe ich so probiert:
und so:
und so:
alle 3 Versuche enthalten dann nur noch den gesamten <frame ...> Tag im Match-Array. Habe ich mit print_r ausgegeben. Nichts brauchbares drin. Nur wenn ich die Quantifier-Versuche unterlasse bekomme ich mein Name-Attribut, und dann auch nur wenn es in double- oder singlequotes steht.
Bin für jeden Hinweis dankbar.
Gruß
Laura
Ich habe ein geniales Pattern:
Code:
$pattern = "#<frame [^>]*name=[\"|']([0-9a-zA-Z_\-]*)[\"|'][^>]*>#isU";
Dieses findet ein Frame-Element in einem Frameset, und darin den Wert des name-Attributes.
Aber nur, wenn der Wert des name-Attributes in double- oder singlequoes stht. Ansonsten findet die RegExp nichts.
Aber genau das ist das Problem, denn es kommt vor, das etwas NICHT in double- oder singlequotes steht. Den Fall muss ich mit abdecken, und das habe ich so probiert:
Code:
$pattern = "#<frame [^>]*name=[\"|']?([0-9a-zA-Z_\-]*)[\"|']?[^>]*>#isU";
und so:
Code:
$pattern = "#<frame [^>]*name=[\"|']{0,1}([0-9a-zA-Z_\-]*)[\"|']{0,1}[^>]*>#isU";
und so:
Code:
$pattern = "#<frame [^>]*name=([\"|']){0,1}([0-9a-zA-Z_\-]*)([\"|']){0,1}[^>]*>#isU";
alle 3 Versuche enthalten dann nur noch den gesamten <frame ...> Tag im Match-Array. Habe ich mit print_r ausgegeben. Nichts brauchbares drin. Nur wenn ich die Quantifier-Versuche unterlasse bekomme ich mein Name-Attribut, und dann auch nur wenn es in double- oder singlequotes steht.
Bin für jeden Hinweis dankbar.
Gruß
Laura