String teilen

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

  • String teilen

    Hi,

    wie kann ich den String "23a653b23c12" wie folgt aufteilen:

    a=653
    b=23
    c=12

    Wie geht das ?

  • #2
    Hallo,

    du machst ne Schleife in der du die Buchstaben von a-z durchgehst, in dieser Schleife suchst nach der Position von dem geraden aktuellen Buchstaben und nach der Position des nächsten Buchstaben, an diesen Stellen kannst dann deinen String zerlegen.
    Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
    Schön - etwas Geschichte kann ja nicht schaden.
    Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

    Kommentar


    • #3
      reguläre ausdrücke => preg_split()
      Kissolino.com

      Kommentar


      • #4
        substr
        preg_match
        preg_match_all
        preg_replace

        kommt drauf an, ob es nur diesen einen string gibt, oder mehrere, die einem muster entsprechen.
        Die Zeit hat ihre Kinder längst gefressen

        Kommentar


        • #5
          @Wurzel

          preg_split() wär da schon ne feine Sache, aber wie kriegt er da die Zuordnung zustande?? *kopfkratz*
          also
          a = 653
          usw...
          Ihr habt ein Torturial durchgearbeitet, das auf den mysql_-Funktionen aufbaut?
          Schön - etwas Geschichte kann ja nicht schaden.
          Aber jetzt seht euch bitte php.net/pdo oder php.net/mysqli bevor ihr beginnt!

          Kommentar


          • #6
            willst du einfach nur den text, oder soll eine variable a angelgt werden, die den wert hat? preg_replace + modifier e. wenn du nur den text willst, gehts auch ohne e.
            OffTopic:
            daß man den leuten alles aus der nase ziehen muß
            Die Zeit hat ihre Kinder längst gefressen

            Kommentar


            • #7
              @quetschi
              wenn der string IMMER so aufgebaut ist kann er es fest zuordnen, ansonsten wäre preg_match_all() wohl besser.

              @hund
              warum preg_replace mit e? preg_match mit einer anschliessenden schleife
              täte es doch auch?
              Kissolino.com

              Kommentar


              • #8
                @hund
                warum preg_replace mit e? preg_match mit einer anschliessenden schleife
                täte es doch auch?
                OffTopic:
                weil der threadstarter nicht genug informationen preisgibt bzw. es nicht schafft, die aufgabenstellung zu verallgemeinern. preg_match ginge sicher auch, wie so vieles, aber ohne genaue angaben kann ich nur raten ...

                - gibt es nur diesen string? wozu dann ein algo?
                - sind es immer nur 3 variablen?
                - soll nur text geschaffen werden, oder existierende variablen?
                - wie ist die grundstruktur der zeichenkette?

                im endeffekt gibt es eine menge an möglichkeiten, man kann sich also die bequemste aussuchen.

                Die Zeit hat ihre Kinder längst gefressen

                Kommentar


                • #9
                  Ich würde es so angehen:
                  PHP-Code:
                  $string '23a653b23c12';
                  $names preg_split('/[A-Za-z]+/'$string);
                  $values preg_split('/[0-9]+/'$string);
                  foreach (
                  $names as $k => $n) {
                      if (!isset($
                  $n) && isset($values[$k])) {
                          $
                  $n $values[$k];
                      }

                  (ungetesteter Code)

                  Kommentar

                  Lädt...
                  X