Seite 1 von 2 12 Letzte
  1. #1
    Avatar von Devon
    Registriert seit
    18.11.2011
    Beiträge
    2.188
    Thanked 1.574 Times in 1.023 Posts

    Standard Dezimalzahlen im Array

    Hallo,

    hab folgendes Problem: Ich möchte eine X-beliebige Dezimalzahl (nehmen wir mal jetzt 1,542) in einem Array abspeichern und mit echo ausgeben. Das Problem hierbei ist, dass das Abspeichern im Array schon scheitert, weil wohlmöglich der Pattern nicht funktioniert. Hier mal mein momentaner Ansatz:

    PHP-Code:
    [...]
    preg_match_all('/<dd class="point">([0-9]+)<\/dd>'$content$kd_ratio);

    $data        = array(
    'score'            => array(
    [...]
    'kdratio'       => $kd_ratio[1][0],
            )
        );

     echo 
    "<b>KDR: </b>"$kd_ratio[1][0];
    [...] 
    Ausgeben tut er mir nichts. Oberhalb ist halt der Content-Shit und unterhalb HTML, was ohnehin ohne Probleme funktioniert. Wenn ich nur das Array ausgeben lassen, erscheint nur "Array" mehr nicht. Hab schon bei Google geguckt und versucht es selbst zu lösen, allerdings nichts wirklich brauchbares gefunden was die Lösung darstellen könnte. Hoffe, hier findet sich jemand der mir das genauer mal erklären und eventuell lösen kann.

    Grüße

  2. #2
    Avatar von Snees
    Registriert seit
    18.11.2011
    Beiträge
    1.001
    Thanked 590 Times in 319 Posts

    Standard AW: Dezimalzahlen im Array

    Versuch's mal hiermit:

    Code:
    ^[+-]?[0-9]{1,3}(?:,?[0-9]{3})*(?:\.[0-9]{2})?$
    Geändert von Snees (03.07.2013 um 10:17 Uhr)

  3. #3
    Avatar von Devon
    Registriert seit
    18.11.2011
    Beiträge
    2.188
    Thanked 1.574 Times in 1.023 Posts

    Standard AW: Dezimalzahlen im Array

    Nichts. Weder eine Ausgabe noch ein "Array" was erscheint.

  4. #4
    Avatar von patlux
    Registriert seit
    26.10.2011
    Beiträge
    1.196
    Thanked 1.596 Times in 725 Posts
    Blog Entries
    2

    Standard AW: Dezimalzahlen im Array

    Wenn du eine Fließkommazahl speichern willst, dann geh ich mal davon aus dass der Wert den du auslesen willst auch eine Fließkommazahl ist. Wenn dass der Fall ist, dann ist dein Regex-Pattern nicht korrekt.

    (\d+\.?\d+)

  5. #5

    Registriert seit
    19.11.2011
    Beiträge
    496
    Thanked 412 Times in 268 Posts

    Standard AW: Dezimalzahlen im Array

    Zitat Zitat von patlux Beitrag anzeigen
    Wenn du eine Fließkommazahl speichern willst, dann geh ich mal davon aus dass der Wert den du auslesen willst auch eine Fließkommazahl ist. Wenn dass der Fall ist, dann ist dein Regex-Pattern nicht korrekt.
    Aber falls doch mal eine Ganzzahl dabei ist, dann muss sie bei deinem Pattern mindestens zweistellig sein.
    "2." ist übrigens auch eine gültige Fließkommazahl.
    Ich würde daher dieses Pattern vorschlagen:
    (\d+(\.\d*)?)

  6. #6
    Avatar von Snees
    Registriert seit
    18.11.2011
    Beiträge
    1.001
    Thanked 590 Times in 319 Posts

    Standard AW: Dezimalzahlen im Array

    Zitat Zitat von Devon Beitrag anzeigen
    Nichts. Weder eine Ausgabe noch ein "Array" was erscheint.
    Ich bin auch davon ausgegangen, dass das Trennzeichen ein Punkt ist.

    Hier kannst du die regulären Ausdrücke übrigens gut testen:

    Regex Tester

    Gibst du jetzt im ersten Feld
    ^[+-]?[0-9]{1,3}(?:,?[0-9]{3})*(?:\.[0-9]{2})?$
    und im zweiten z.B:
    132,132.31
    oder einfach nur
    1.12
    ein, dann siehst du, dass es funktioniert.
    Geändert von Snees (03.07.2013 um 10:36 Uhr)

  7. #7
    Avatar von Devon
    Registriert seit
    18.11.2011
    Beiträge
    2.188
    Thanked 1.574 Times in 1.023 Posts

    Standard AW: Dezimalzahlen im Array

    Immernoch keine Ausgabe. Ich verzweifel langsam, weiß aber nun woran es vermutlich liegt. Es gibt mehrere Stellen mit "<dd class="point">", deswegen gibt er mir wohlmöglich auch nichts aus. Gibt es den die Möglichkeit, ein Array mit einem anderen zu subtrahieren?

  8. #8
    Gelöschter Benutzer
    Gast

    Standard AW: Dezimalzahlen im Array

    Gib mal den Link zur Webseite von der du versuchst Sachen zu parsen.

  9. #9
    Avatar von Devon
    Registriert seit
    18.11.2011
    Beiträge
    2.188
    Thanked 1.574 Times in 1.023 Posts

    Standard AW: Dezimalzahlen im Array

    http://en.warrock.nexoneu.com/Rankin...?nickname=Finn

    Und da will ich dann halt unter Total Kill / Death Ratio die letzte Zahl "0.76" parsen.

  10. #10
    Gelöschter Benutzer
    Gast

    Standard AW: Dezimalzahlen im Array

    PHP-Code:
    $content file_get_contents('http://en.warrock.nexoneu.com/Ranking/GetProfile?nickname=Finn');
    preg_match_all('#<dd class="point">(.*?)</dd>#'$content$results);

    print_r($results); 

    Code:
    Array
    (
        [0] => Array
            (
                [0] => <dd class="point">0.76</dd>
                [1] => <dd class="point">0.34</dd>
                [2] => <dd class="point">0.32</dd>
                [3] => <dd class="point">4.76</dd>
            )
    
    
        [1] => Array
            (
                [0] => 0.76
                [1] => 0.34
                [2] => 0.32
                [3] => 4.76
            )
    
    
    )

Seite 1 von 2 12 Letzte

Ähnliche Themen

  1. Antworten: 3
    Letzter Beitrag: 24.11.2013, 15:11
  2. Array - Dynamisches Menü
    Von Saad im Forum PHP
    Antworten: 1
    Letzter Beitrag: 26.03.2013, 13:46
  3. C# ListView Items in Array speichern
    Von Saad im Forum .Net
    Antworten: 5
    Letzter Beitrag: 09.10.2012, 18:56
  4. [VB][Frage] Alle Applets in einen Array
    Von rVs14 im Forum Sourcecode
    Antworten: 3
    Letzter Beitrag: 09.06.2012, 19:47
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.