Regex gibt nicht alles aus

Diskutiere Regex gibt nicht alles aus im Ruby, php, Perl, Python ... Forum im Bereich Programmieren unter Linux/Unix; Hi, ich habe einen Regex für rapidshare links geschrieben, allerdings gibt er nicht alle Links aus. Er gibt z.b. nur jeden 2ten aus, oder nur den...

  1. #1 brabbelj, 31.03.2008
    brabbelj

    brabbelj Doppel-As

    Dabei seit:
    25.03.2007
    Beiträge:
    105
    Zustimmungen:
    0
    Hi,
    ich habe einen Regex für rapidshare links geschrieben, allerdings gibt er nicht alle Links aus. Er gibt z.b. nur jeden 2ten aus, oder nur den ersten und letzten nicht. Ich kann keine regelmäßigkeit dadrin erkennen.

    PHP:
    <?php

    $links 
    $_POST['links'];

    preg_match_all("/http:\/\/rapidshare\.com\/files\/[1-9]{6,10}\/(.*?)\.rar/"$links$match);



    foreach(
    $match as $v1){

    foreach(
    $v1 as $v2){
    if(
    strstr($v2"rapidshare.com")){
    echo 
    $v2 "<br>";
    }
    }
    }



    ?>
    Die Links sehen so aus:
    Code:
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633023/Datei-xbb.part01.rar" target="_blank">Part 1</a> | 
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633099/Datei-xbb.part02.rar" target="_blank">Part 2</a> | 
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633146/Datei-xbb.part03.rar" target="_blank">Part 3</a> | 
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633224/Datei-xbb.part04.rar" target="_blank">Part 4</a> | 
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633266/Datei-xbb.part05.rar" target="_blank">Part 5</a> | 
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633335/Datei-xbb.part06.rar" target="_blank">Part 6</a> | 
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633379/Datei-xbb.part07.rar" target="_blank">Part 7</a> | 
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633428/Datei-xbb.part08.rar" target="_blank">Part 8</a> | 
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633498/Datei-xbb.part09.rar" target="_blank">Part 9</a> | 
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633543/Datei-xbb.part10.rar" target="_blank">Part 10</a> | 
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633571/Datei-xbb.part11.rar" target="_blank">Part 11</a> | 
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633627/Datei-xbb.part12.rar" target="_blank">Part 12</a> | 
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633686/Datei-xbb.part13.rar" target="_blank">Part 13</a> | 
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633748/Datei-xbb.part14.rar" target="_blank">Part 14</a> | 
    <a href="http://example.com/out.php?link=extern;url=http://rapidshare.com/files/96633760/Datei-xbb.part15.rar" target="_blank">Part 15</a>
    Die Ausgabe bei diesem speziellen Beispiel sieht so aus:
    Code:
    http://rapidshare.com/files/96633146/Datei-xbb.part03.rar
    http://rapidshare.com/files/96633224/Datei-xbb.part04.rar
    http://rapidshare.com/files/96633266/Datei-xbb.part05.rar
    http://rapidshare.com/files/96633335/Datei-xbb.part06.rar
    http://rapidshare.com/files/96633379/Datei-xbb.part07.rar
    http://rapidshare.com/files/96633428/Datei-xbb.part08.rar
    http://rapidshare.com/files/96633498/Datei-xbb.part09.rar
    http://rapidshare.com/files/96633543/Datei-xbb.part10.rar
    http://rapidshare.com/files/96633571/Datei-xbb.part11.rar
    http://rapidshare.com/files/96633627/Datei-xbb.part12.rar
    http://rapidshare.com/files/96633686/Datei-xbb.part13.rar
    http://rapidshare.com/files/96633748/Datei-xbb.part14.rar
    Kann mir jeamnd helfen?

    mfg
    brabbelj

    PS:
    print_r von $match gibt das aus:
    Code:
    Array ( [0] => Array ( [0] => http://rapidshare.com/files/96633146/Datei-xbb.part03.rar [1] => http://rapidshare.com/files/96633224/Datei-xbb.part04.rar [2] => http://rapidshare.com/files/96633266/Datei-xbb.part05.rar [3] => http://rapidshare.com/files/96633335/Datei-xbb.part06.rar [4] => http://rapidshare.com/files/96633379/Datei-xbb.part07.rar [5] => http://rapidshare.com/files/96633428/Datei-xbb.part08.rar [6] => http://rapidshare.com/files/96633498/Datei-xbb.part09.rar [7] => http://rapidshare.com/files/96633543/Datei-xbb.part10.rar [8] => http://rapidshare.com/files/96633571/Datei-xbb.part11.rar [9] => http://rapidshare.com/files/96633627/Datei-xbb.part12.rar [10] => http://rapidshare.com/files/96633686/Datei-xbb.part13.rar [11] => http://rapidshare.com/files/96633748/Datei-xbb.part14.rar ) [1] => Array ( [0] => Datei-xbb.part03 [1] => Datei-xbb.part04 [2] => Datei-xbb.part05 [3] => Datei-xbb.part06 [4] => Datei-xbb.part07 [5] => Datei-xbb.part08 [6] => Datei-xbb.part09 [7] => Datei-xbb.part10 [8] => Datei-xbb.part11 [9] => Datei-xbb.part12 [10] => Datei-xbb.part13 [11] => Datei-xbb.part14 ) )
     
  2. #2 Aqualung, 31.03.2008
    Aqualung

    Aqualung Routinier

    Dabei seit:
    12.02.2008
    Beiträge:
    404
    Zustimmungen:
    0
    I. A. sollte das wohl

    Code:
     ... [[B][COLOR="Red"]0[/COLOR][/B]-9]{6,10} ...
    heissen.

    Gruß Aqualung
     
  3. #3 brabbelj, 31.03.2008
    brabbelj

    brabbelj Doppel-As

    Dabei seit:
    25.03.2007
    Beiträge:
    105
    Zustimmungen:
    0
    >.<

    Danke für deine Hilfe, jetzt geht es ^^

    Den Fehler mach ich jetzt bestimmt nicht mehr ^^

    DANKE

    mfg
    brabbelj
     
  4. #4 Gott_in_schwarz, 31.03.2008
    Gott_in_schwarz

    Gott_in_schwarz ar0

    Dabei seit:
    22.04.2007
    Beiträge:
    546
    Zustimmungen:
    0
    Ort:
    Niedersachsen
    Statt [0-9] kann man (zumindest in perl..) auch \d (für digit) oder die POSIX-style characterclass [[:digit:]] benutzen, dann sind solche Fehler weitestgehend ausgeschlossen. (Außerdem ist es zum Beispiel bei der POSIX Schreibweise auch noch "human-readable".)
     
Thema:

Regex gibt nicht alles aus

Die Seite wird geladen...

Regex gibt nicht alles aus - Ähnliche Themen

  1. Verständnisfrage zu RegExps

    Verständnisfrage zu RegExps: Hallo Leute, ich bastle gerade an einem Shell-Script und brauche dabei ein paar RegExps. Bisher hatte ich mich mit RegExps wenig auseinander...
  2. grep + regex zum Log parsen

    grep + regex zum Log parsen: Hi zusammen, ich möchte ein Logfile gerne auf eine Stringkombination durchsuchen. D.h. im Log steht sowas wie: 2016-12-20 10:10:43 ETL started :...
  3. sed mit basename verknüpfen - oder anders Dateipfade in Dateien mit regex ersetzen?

    sed mit basename verknüpfen - oder anders Dateipfade in Dateien mit regex ersetzen?: Hallo, mein Ziel ist es ein Script zu schreiben, das eine CSS-Datei entgegen nimmt und in dieser Datei Pfade ersetzt. Ich möchte bspw....
  4. RegEx Problem ... grep kein \. außer \.name

    RegEx Problem ... grep kein \. außer \.name: Hallo Leute, ich möchte gerne einen regulären ausdruck zum filtern bestimmter dateien außer 1 bestimmten. Konkret bedeutet das ich möchte alle...
  5. regexp für alle user einer bestimmten Maildomain

    regexp für alle user einer bestimmten Maildomain: Hallo, ich brauche den regulären Ausdruck, der mir erlaubt alle Mailadressen von firma.de zu filtern. Ich habe es schon mit folgenden...