Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Izdvajanje djelova nekog stringa

[es] :: PHP :: Izdvajanje djelova nekog stringa

[ Pregleda: 2582 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

feniks-sd

Član broj: 163192
Poruke: 173
*.adsl.net.t-com.hr.



+2 Profil

icon Izdvajanje djelova nekog stringa11.05.2008. u 09:23 - pre 194 meseci
Vec se duze vreme mucim, ali nikako da uspijem izvvojiit ono sto trazim.

Imam string $val="10:0:42:53.00"

Na kraju zelim da dobijem string npr $dani1 ovakvog oblika "10d 0:42:53"

Uspio sam samo djelomicno i to ovim kodom:

Code:

$val="10:0:42:53.00" ;

//custom ispitivanje

$tocka   = '.';
$dvotocka= ':' ; 
$postocka= strripos($val, $tocka);

$resttocka = substr($val, 0,$postocka);  //  

$postdvotocka=strripos($resttocka, $dvotocka);
$dani= substr($resttocka, 0, - $postdvotocka -1);   //
echo $dani ;
$sati=substr($resttocka,  - $postdvotocka);  //
$dani1.="d$dani $sati"  ;




Ovaj kod radi ispravno, medutim string $ val moze biti i ovakav "0:0:42:53.00"

i tada sve pada u vodu , slikovito receno.

Ima li netko prijedlog kako da to rijesim.
 
Odgovor na temu

kelja

Član broj: 70429
Poruke: 1416
91.150.98.*



+35 Profil

icon Re: Izdvajanje djelova nekog stringa11.05.2008. u 10:38 - pre 194 meseci
Ima boljih resenja, sigurno, sa regularnim ekspresijama, ali meni je ovo najlakse:

Code:

$niz=explode(":",$val);
//print_r($niz);
$time=$niz[0]."d $niz[1]:";
$niz[3]=str_replace(".00","",$niz[3]);
$time.=$niz[2].":$niz[3]";
echo $time;


I , malo 'finije':
Code:

$patern="*[0-9]+*";
preg_match_all($patern,$val,$match);
$time.= $match[0][0]."d ".$match[0][1].":".$match[0][2].":".$match[0][3];
echo $time;


[Ovu poruku je menjao kelja dana 11.05.2008. u 12:11 GMT+1]
 
Odgovor na temu

glavince
Ohrid/Macedonia

Član broj: 66412
Poruke: 246
79.141.120.*

Sajt: ohridnews.com


Profil

icon Re: Izdvajanje djelova nekog stringa11.05.2008. u 11:10 - pre 194 meseci
A kao dobijas taj string $val="10:0:42:53.00" ?

Mozda moze ranije da se formatira u oblik u koji zelis?
 
Odgovor na temu

kazil
Robert Bašić
Full time PHP dev :)
Bačka Topola - Novi Sad

Član broj: 120044
Poruke: 686
*.cable-3.sattrakt.net.

Jabber: robertbasic@elitesecurity.org
ICQ: 446475288
Sajt: robertbasic.com


+2 Profil

icon Re: Izdvajanje djelova nekog stringa11.05.2008. u 15:22 - pre 194 meseci
Taman malo da vezbam regularne izraze :)

Code:

$string = "10:0:42:53.00";

preg_match("/(?<dan>[0-9]{1,2}):(?<sat>[0-9]{1,2}):(?<minut>[0-9]{1,2}):(?<sekund>[0-9]{1,2})/",$string,$matches);

echo "$matches[dan]<br />$matches[sat]<br />$matches[minut]<br />$matches[sekund]";


Pomoc:
http://www.phpguru.org/downloa...PHP%20PCRE%20Cheat%20Sheet.pdf
http://www.php.net/manual/en/function.preg-match.php
 
Odgovor na temu

feniks-sd

Član broj: 163192
Poruke: 173
*.adsl.net.t-com.hr.



+2 Profil

icon Re: Izdvajanje djelova nekog stringa11.05.2008. u 15:45 - pre 194 meseci
Ma ljudi moji to radi kako treba. Taj string koji sam trebao "uljepati" ne mogu prije podesiti jer se kao takav cita sa jednog uredaja koji na izlazu daje string takav kakav je. Malo ruzan i tesko za skuziti. Tesko da covjek moze zakljuciti da se radi o danima , satima , minutana i sekundama. Posebno jer na kraju imas ".00" koje nicemu ne sluze.

Hvala na pomoci.
 
Odgovor na temu

kazil
Robert Bašić
Full time PHP dev :)
Bačka Topola - Novi Sad

Član broj: 120044
Poruke: 686
*.cable-3.sattrakt.net.

Jabber: robertbasic@elitesecurity.org
ICQ: 446475288
Sajt: robertbasic.com


+2 Profil

icon Re: Izdvajanje djelova nekog stringa11.05.2008. u 16:00 - pre 194 meseci
Umm, koje radi kako treba?
 
Odgovor na temu

[es] :: PHP :: Izdvajanje djelova nekog stringa

[ Pregleda: 2582 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.