Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Usuwanie elementów tablicy
--amon--
post
Post #1





Goście







Witam,

Mam tablicę zawierającą kilkadziesiąt tysięcy słów. Każdy element tablicy to oddzielny wyraz.
Jak wywalić z tej tablicy wszystkie elementy:
1) Zawierające polskie znaki: ąęśćżźół
2) Krótsze niż 4 znaki
3) Dłuższe niż 7 znaków

Domyślam, się, że trzeba użyć wyrażeń regularnych w pętli ale niestety nie mam tego opanowanego - wyrażeń regularnych.
A może można to załatwić bez pętli, np. jakąś funkcją do działania na tablicach?

Pomożecie?

Dzięki.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
Piogola
post
Post #2





Grupa: Zarejestrowani
Postów: 151
Pomógł: 36
Dołączył: 1.02.2011
Skąd: Warszawa

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


array_filter + odpowiednio napisana funkcja
Go to the top of the page
+Quote Post
tehaha
post
Post #3





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


a co to za problem zrobić pętlę na tablicy? bez przesady to o co prosisz to 5linijek kodu, funkcją strlen sprawdzisz długość, a preg_match te polskie znaki, ja bym zrobił to na zasadzie przepisania do drugiej tablicy
1. robisz pętlę
2. jeżeli wartość jest dłuższa od 4 i krótsza od 7 oraz spełnia wykluczenie tych znaków '/([^ąęśćżźół])/' to przepisujesz do drugiej tablicy

w ten sposób będzie chyba najprościej
Go to the top of the page
+Quote Post
--amon--
post
Post #4





Goście







Cytat(tehaha @ 19.02.2011, 15:52:58 ) *
spełnia wykluczenie tych znaków '/([^ąęśćżźół])/'
No właśnie ale jak to wykonać?

Dzięki za podpowiedzi co do długości, z tym sobie już chyba poradzę. Ale z tymi polskimi znakami to nie bardzo (IMG:style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post
--amon--
post
Post #5





Goście







Czy to ma być tak?
  1. if(!preg_match('/([^ąęśćżźół])/'){
  2. /kopiowanie do drugiej tablicy
  3. }
Go to the top of the page
+Quote Post
tehaha
post
Post #6





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

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


to co Ci podałem to sam wzorzec do funkcji preg_match, prawie dobrze tylko do preg_match musisz podać jeszcze 1 parametr http://pl2.php.net/preg_match tam masz przykłady a w tego ifa co zrobiłeś możesz wstawić jeszcze 2 warunki z strlen, wtedy będziesz miał wszystko co chcesz

Ten post edytował tehaha 19.02.2011, 16:28:43
Go to the top of the page
+Quote Post
--amon--
post
Post #7





Goście







Dzięki wielkie tehaha.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 10.10.2025 - 19:30