phpbar.de logo

Mailinglisten-Archive

[php] String Formatierung

[php] String Formatierung

Christian Hörmann php at hoerby.org
Mon Dez 5 12:33:27 CET 2005


WOW!!!

Danke... das war genau das, was ich gebraucht habe!!!

Nochmals herzlichen herzlichen Dank!!!

lg
Christian


>Hallo Christian,
>
>Am Freitag, 2. Dezember 2005 13:10 schrieb Christian Hörmann:
>> >kurze Nachfrage:
>> >
>> >Ist die Syntax immer von hinten gesehen drei Stellen, Punkt, drei 
>> >Stellen,
>> >Punkt, zwei Stellen, Bindestrich, drei Stellen, wobei vorne etwas
>> > wegfallen kann? Anders gefragt - sind das alle möglichen Kombinationen:
>> >
>> >1
>> >01
>> >901
>> >8.901
>> >78.901
>> >678.901
>> >5.678.901
>> >45.678.901
>> >3-45.678.901
>> >23-45.678.901
>> >123-45.678.901
>>
>> genau richtig! so hab ichs gemeint. du hast den nagel ziemlich genau auf
>> den kopf getroffen.
>
>ok. Dann kommt hier ein Lösungsvorschlag von mir:
>
><?php
>
> function formatiereZeichenkette($sZeichenkette) {
>
>   $iZeichenkette = strlen($sZeichenkette);
>    $aZeichenkette = array_reverse(str_split($sZeichenkette, 1));
>    $sZeichenkette = '';
>
>    foreach ($aZeichenkette as $iSchluessel => $sZeichen) {
>      $sZeichenkette = $sZeichen.$sZeichenkette;
>      if ($iZeichenkette>($iSchluessel+1)) {
>        if ($iSchluessel==2 || $iSchluessel==5) {
>          $sZeichenkette = '.'.$sZeichenkette;
>        } else if ($iSchluessel==7) {
>          $sZeichenkette = '-'.$sZeichenkette;
>        }
>      }
>    }
>
>    return $sZeichenkette;
>  }
>
>  $aZeichenketten = array('1', '01', '901', '8901', '78901', '678901',
>'5678901', '45678901', '345678901', '2345678901', '12345678901');
>
>  echo('<table border="1">');
>  foreach ($aZeichenketten as $sZeichenkette) {
>    echo('<tr><td align="right">'.$sZeichenkette.':</td><td
>align="right">'.formatiereZeichenkette($sZeichenkette).'</td></tr>');
>  }
>  echo('</table>');
>
>?>
>
>Ich vermute mal, wenn man sich mit regulären Ausdrücken auskennt, kann man 
>das
>auch in einen komplizierten regulären Ausdruck packen... :-) Ansonsten ist
>das oben die konventionelle Lösung, die mir am einfachsten erscheint. ;-)
>
>
>Viele Grüße
>Lutz


php::bar PHP Wiki   -   Listenarchive