Ankündigung

Einklappen
Keine Ankündigung bisher.

Trennzeichen entfernen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Trennzeichen entfernen

    Hallo Leute,
    ich habe ein Problem mit den Tausendertrennzeichen. Ich habe z.B. die Zahl 11.111.111 . Ich möchte die Punkte in der Zahl raus haben. Also es soll 11111111 daraus werden. Wie und womit mache ich das?

    Vielen Dank im Vorab.

    Yessi

    p.s.: Ich habe das mit preg_replace versucht, aber kein erfolg.
    Code:
    $zeichenkette = "11.111.111";
    $suchmuster[0] = '/./';
    $ersetzungen[0] = '';
    echo preg_replace($suchmuster, $ersetzungen, $zeichenkette);

  • #2
    Wenn du die funktion "number_format" verwendest, dann lass es einfach weg. Standartmässig sind keine "." vorhanden... (Soweit ich weiß)
    [B]Mfg Tomtaz[/B]
    [I]"Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..." [/I]:!::shock:

    Kommentar


    • #3
      Danke für die Antwort.
      Nur klappt das irgendwie nicht. Kann sein, das ich etwas falsch verstanden habe. Ich habe jetzt mal das versucht:
      Code:
      $alt = "12.345.678";
      $alt2 = number_format($alt);
      echo $alt2;
      Damit bekomme ich nur 12 raus. Ich mochte aber 12345678 raus bekommen.
      Wo stehe ich jetzt auf dem Schlauch?


      Vielen Dank im Vorab.
      Yessi

      Kommentar


      • #4
        Hallo Yesamerika,

        Wenn es immer dasselbe Muster ist, dann benutz doch einfach eine der zahlreichen string-Funktionen wie "str_replace" genaue Syntax nachzulesen auf php.net. Diese sind einfacher und schneller als reguläre Ausdrücke - aber auch eben nur für solche einfachen Dinge geeignet.

        Gruß,
        pepe

        Kommentar


        • #5
          Einfache Sache:

          PHP-Code:
          str_replace'.'''$string ); 
          Wenn es mehrere Zeichen sind kann man das auch so lösen:

          PHP-Code:
          $search = array( '.'',' /*etc*/ );
          $replace arra'''' );
          $string str_replace$search$replace$string ); 
          [B]Mfg Tomtaz[/B]
          [I]"Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..." [/I]:!::shock:

          Kommentar


          • #6
            Hallo Yesamerika,

            Du hast tomtaz falsch verstanden. Er meinte, falls Du die Zeichenfolgen selbst mit number_format erzeugst solltest Du einfach die Zahl ohne den Aufruf von number_format verwenden. Damit kommen nämlich die Trennzeichen rein.

            Allerdings glaube ich nicht, dass Du die da erst reinmachst um sie dann wieder zu entfernen.

            Mit den String-Funktionen geht es vermutlich schon irgendwie, aber zum erstmaligen Prüfen, ob da überhaupt eine Zahl im richtigen Format in dem String steckt, würde ich schon mit preg_match arbeiten.
            Als Muster sowas in der Art: '#[0-9.]+#'. Das findet erstmal die ganze Zahl und dann kannst Du mit str_replace die '.' durch '' ersetzen lassen.

            @tomtaz:
            Das Ding was Du meinst, heißt Standard.
            Hieße es Standart, würden wir über Kopf- oder Handstand reden.
            Und das nach alter und neuer Rechtschreibun.
            **********************************
            Nein, ich bin nicht die Signatur.
            Ich putze hier nur.
            **********************************

            Kommentar


            • #7
              Zitat von Der_Gerhard
              Hallo Yesamerika,

              Du hast tomtaz falsch verstanden. Er meinte, falls Du die Zeichenfolgen selbst mit number_format erzeugst solltest Du einfach die Zahl ohne den Aufruf von number_format verwenden. Damit kommen nämlich die Trennzeichen rein.

              Allerdings glaube ich nicht, dass Du die da erst reinmachst um sie dann wieder zu entfernen.

              Mit den String-Funktionen geht es vermutlich schon irgendwie, aber zum erstmaligen Prüfen, ob da überhaupt eine Zahl im richtigen Format in dem String steckt, würde ich schon mit preg_match arbeiten.
              Als Muster sowas in der Art: '#[0-9.]+#'. Das findet erstmal die ganze Zahl und dann kannst Du mit str_replace die '.' durch '' ersetzen lassen.

              @tomtaz:
              Das Ding was Du meinst, heißt Standard.
              Hieße es Standart, würden wir über Kopf- oder Handstand reden.
              Und das nach alter und neuer Rechtschreibun.
              Ja is ja gut, ich darf mich doch auch mal verschreiben oder? :wink:
              [B]Mfg Tomtaz[/B]
              [I]"Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..." [/I]:!::shock:

              Kommentar


              • #8
                Klar darf das jeder.
                Nur dieser Fehler taucht so oft bei Leuten auf, dass ich mir nicht sicher bin, ob das nur ein Versehen ist.
                Und deshalb weise ich auch auf diesen Fehler hin, wenn ich ohnehin grad eine Antwort poste.

                Und Du hättest ja wenigstens das fehlende g in meinem Posting nachreichen dürfen ^^
                **********************************
                Nein, ich bin nicht die Signatur.
                Ich putze hier nur.
                **********************************

                Kommentar


                • #9
                  Re: Trennzeichen entfernen

                  Zitat von Yesamerika
                  Ich habe z.B. die Zahl 11.111.111 . Ich möchte die Punkte in der Zahl raus haben. Also es soll 11111111 daraus werden.
                  Grob:
                  PHP-Code:
                  <?php
                  echo preg_replace('#[^\d]#''''11.111.111');
                  ?>
                  Ersetzt alles was keine Zahl ist durch nichts. Kann ins Auge gehen.

                  Aus
                  Code:
                  11 + 4
                  wird dann 114. Blödes Beispiel, aber soll aufzeigen, welche negativen Effekte auftreten könnten.

                  Möchtest du einfach nur den Punkt entfernen, benutze str_replace().

                  Kommentar


                  • #10
                    Hallo Leute,
                    vielen Dank für die vielen Antworten. Mit str_replace klappt das sehr gut.

                    Kann hier also geclosed werden.

                    Yessi

                    Kommentar

                    Lädt...
                    X