Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> policzenie elementow w stringu
atomp3
post 30.05.2009, 18:02:21
Post #1





Grupa: Zarejestrowani
Postów: 126
Pomógł: 1
Dołączył: 31.03.2006

Ostrzeżenie: (0%)
-----


Witam


Musze policzyc ilosc wyrazow "{duzy|maly}" w stringu Domek jest {duzy|maly} koloru {zolty|rozowy}

Prawidlowa wartosc bedzie 4

Wiem ze mozna uzyc preg_match_all tylko nie wiem jak


Pozdr.

Ten post edytował atomp3 30.05.2009, 18:03:13
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
MWL
post 30.05.2009, 18:12:25
Post #2





Grupa: Zarejestrowani
Postów: 493
Pomógł: 32
Dołączył: 14.04.2008
Skąd: Lenkowski.net

Ostrzeżenie: (0%)
-----


Jak dobrze rozumiem:
$string = "{domek|penis|kotek}"
$string = substr($string, 1, -1);
$array = explode('|', $string);
echo sizeof($array);

Ten post edytował MWL 30.05.2009, 18:12:53


--------------------
Wpadaj na mój kanał o PHP. Dużo mięsa 🥩!
Go to the top of the page
+Quote Post
atomp3
post 30.05.2009, 18:29:10
Post #3





Grupa: Zarejestrowani
Postów: 126
Pomógł: 1
Dołączył: 31.03.2006

Ostrzeżenie: (0%)
-----


zwraca 3
Go to the top of the page
+Quote Post
MWL
post 30.05.2009, 18:32:37
Post #4





Grupa: Zarejestrowani
Postów: 493
Pomógł: 32
Dołączył: 14.04.2008
Skąd: Lenkowski.net

Ostrzeżenie: (0%)
-----


no a ila ma zwracać?
{domek|penis|kotek}
3 tak?


--------------------
Wpadaj na mój kanał o PHP. Dużo mięsa 🥩!
Go to the top of the page
+Quote Post
atomp3
post 30.05.2009, 18:39:38
Post #5





Grupa: Zarejestrowani
Postów: 126
Pomógł: 1
Dołączył: 31.03.2006

Ostrzeżenie: (0%)
-----


jak podstawisz moj string {duzy|maly} koloru {zolty|rozowy} zwraca 3 a ma byc 4

chodzi o to zeby wyswietlilo wszytskie kombinacje, hmm w zasadzi to ma byc ich 16 jakis pomysl?

funkcja jest taka

function random($matches)
{

$choices = explode('|', $matches[1] );

$choice = $choices[array_rand($choices)];

return $choice;
}

Ten post edytował atomp3 30.05.2009, 18:42:04
Go to the top of the page
+Quote Post
MWL
post 30.05.2009, 18:41:31
Post #6





Grupa: Zarejestrowani
Postów: 493
Pomógł: 32
Dołączył: 14.04.2008
Skąd: Lenkowski.net

Ostrzeżenie: (0%)
-----


aha, no to nei zadziała tongue.gif myślałem ze to tylko dla stringów z tymi {}


--------------------
Wpadaj na mój kanał o PHP. Dużo mięsa 🥩!
Go to the top of the page
+Quote Post
atomp3
post 30.05.2009, 18:45:09
Post #7





Grupa: Zarejestrowani
Postów: 126
Pomógł: 1
Dołączył: 31.03.2006

Ostrzeżenie: (0%)
-----


np sorki namieszalem troszke 4 ma byc

domek jest maly koloru zoltego

domek jest maly koloru rozowego

domek jest duzy koloru zoltego

domek jest duzy koloru rozowego
Go to the top of the page
+Quote Post
marcin86
post 2.06.2009, 21:47:19
Post #8





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 2.06.2009

Ostrzeżenie: (0%)
-----


Cytat(atomp3 @ 30.05.2009, 19:45:09 ) *
np sorki namieszalem troszke 4 ma byc

domek jest maly koloru zoltego

domek jest maly koloru rozowego

domek jest duzy koloru zoltego

domek jest duzy koloru rozowego


Namieszałeś i to bardzo, a nie troszke ;p Czyli w końcu chodzi o ilość kombinacji wszystkich (możliwych wyborów) czy jak?

Ten post edytował marcin86 2.06.2009, 21:50:03
Go to the top of the page
+Quote Post
Maveral
post 2.06.2009, 23:04:33
Post #9





Grupa: Zarejestrowani
Postów: 45
Pomógł: 8
Dołączył: 30.07.2005

Ostrzeżenie: (0%)
-----


Jeśli to ma tylko zliczać, to nic prostszego:
  1. <?php
  2.    $tekst = 'Domek jest {duzy|maly} koloru {zolty|rozowy}';
  3.    echo substr_count($tekst, '|') + substr_count($tekst, '{');
  4. ?>
Go to the top of the page
+Quote Post
erix
post 3.06.2009, 12:10:22
Post #10





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




A nie możesz przez preg_match" title="Zobacz w manualu PHP" target="_manual...?

To przecież jedna z prostszych regułek, wtedy wystarczy policzyć zwykłą pętlą...


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 20.07.2025 - 09:53