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

Izdvajanje djelova nekog stringa

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

[ Pregleda: 356 | Odgovora: 5 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

feniks-sd

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



Profil

icon Izdvajanje djelova nekog stringa11.05.2008. u 09:23

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.
11.05.2008. u 09:23 

kelja

Član broj: 70429
Poruke: 956
91.150.98.*



Profil

icon Re: Izdvajanje djelova nekog stringa11.05.2008. u 10:38
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]
11.05.2008. u 10:38 

glavince
Ohrid/Macedonia

Član broj: 66412
Poruke: 245
79.141.120.*

Sajt: ohridnews.com


Profil

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

Mozda moze ranije da se formatira u oblik u koji zelis?
11.05.2008. u 11:10 

kazil
Robert Bašić
student, wannabe freelancer
Bačka Topola

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

Jabber: kazil@elitesecurity.org
ICQ: 446475288
Sajt: www.vtssu.rs/~kazil


Profil

icon Re: Izdvajanje djelova nekog stringa11.05.2008. u 15:22
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
And Your Books I Shall Forever Read...
Earth is but one country, and mankind its citizens...
11.05.2008. u 15:22 

feniks-sd

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



Profil

icon Re: Izdvajanje djelova nekog stringa11.05.2008. u 15:45
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.
11.05.2008. u 15:45 

kazil
Robert Bašić
student, wannabe freelancer
Bačka Topola

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

Jabber: kazil@elitesecurity.org
ICQ: 446475288
Sajt: www.vtssu.rs/~kazil


Profil

icon Re: Izdvajanje djelova nekog stringa11.05.2008. u 16:00
Umm, koje radi kako treba?
And Your Books I Shall Forever Read...
Earth is but one country, and mankind its citizens...
11.05.2008. u 16:00 

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

[ Pregleda: 356 | Odgovora: 5 ]

Postavi temu Odgovori

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