Autor Zpráva
swetko
Profil
Dobrý večer,
vkladám do textarea $data, ktoré vypadajú napríklad takto:
156 4189
4894       898
5026 489
456   1406

-čiže sú tam rôzne dlhé medzery a ja by som chcel takýto výstup:
156-4189
489-4898
5026-489
456-1406


Skúšal som niečo takéto, ale vypisuje to len prvý riadok.
<?php
$data=array(nl2br(trim($_REQUEST["data"])));

foreach($data as $riadok){
list($prve,$druhe)=explode(" ",$riadok);
echo $prve."-".$druhe."\n";
}
//Nesmejte sa :)
?>


Ďakujem za rady.
Taps
Profil
swetko
nemáš možnost oddělit jednotlivé čísla např středníkem ?
swetko
Profil
Taps
Vstup bude pozostávať z čísel oddelených rozne dlhými medzerami a tabulátormi.
Ono
$data=nl2br(trim($_REQUEST["data"]));
mi to vypľuje pekne pod sebou a iba s jednou medzerou, len ešte potrebujem nahradiť tú jednu medzeru za "-".

//edit1: Teraz ma napadlo že by som to mohol jednoducho nechať vyhľadať a nahradiť " " za ".";

//edit2: Tiež nie dobre, pretože v skutočnosti bude vstup zložitejší, niečo takéto:
ab     12235  156     4856
45d 5555565 5616    456

a výstup:
ab-12235-156,4856,
45d-5555565-561,456,
Alphard
Profil
Berte to po řádcích a nechte skupiny bílých znaků nahradit za -, neměl by to být problém.
swetko
Profil
Alphard
Skúšal som to pomocou "foreach" (ak som pochopil Váš príspevok), ale neprinieslo to želaný výsledok.

...skupiny bílých znaků nahradit za -...
Áno ale potreboval by som niektoré nahradiť za "-" a niektoré za ",".
Alphard
Profil
$radky = explode("\n", $_REQUEST["data"]);
foreach ($radky as $radek)
{
  $radek = trim($radek);
  // tady by se zpracoval řádek
  echo $radek;
}


Celý kód vám nejsem schopen napsat, protože z vašich příkladů si nejsem jist, podle jakých pravidel se dává , a -.
swetko
Profil
Ďakujem, už je to vyriešené.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: