Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] wychwycenie z tekstu listy najczęstrzych słów.
Octobus
post
Post #1





Grupa: Zarejestrowani
Postów: 259
Pomógł: 1
Dołączył: 3.07.2011

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


Mam za zadanie wychwycić z tekstu listę najczęściej występujących słów i posegregować je względem ilości występowania. Spotkał się ktoś z podobnym problemem bo zastanawiam się właśnie jak do tego podejść ;/
Go to the top of the page
+Quote Post
mortus
post
Post #2





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

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


Trzeba:
1. usunąć wszystkie znaki interpunkcyjne (preg_replace),
1.a. usunąć wyrazy (przysłówki, zaimki itp.), które nie będą zliczane (również preg_replace),
2. zamienić wszystkie litery na małe (strtolower),
3. wczytać wyrazy do tablicy (explode(' ', $tekst)),
4. zliczyć wszystkie wartości (i tutaj PHP daje nam do dyspozycji funkcję array_count_values).

Jeśli tekst jest długi (waga powyżej dajmy na to 50MB), to najprawdopodobniej trzeba będzie go podzielić na fragmenty i wykorzystać więcej funkcji operujących na tablicach.
Go to the top of the page
+Quote Post
Octobus
post
Post #3





Grupa: Zarejestrowani
Postów: 259
Pomógł: 1
Dołączył: 3.07.2011

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


array_count_values właśnie tego nie znałem (IMG:style_emoticons/default/smile.gif)

Mam jeszcze jeden motyw. W pobranych słowach są znaki których nie chciałbym ;/ czyli np
Cytat
[międzynarodowej,]
["Wyobraźmy]
[nas:]
[„Nasz]
[©] <-- na to nie dziala mb_strlen


Nie wiem jak "złapać" wszystkie te niechciane rzeczy zeby je pozniej usunac ;/
Go to the top of the page
+Quote Post
thek
post
Post #4





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Przeczytaj raz jeszcze dokładnie punkt 1. i 1.a. bo to jest rozwiązanie Twojego problemu.
Go to the top of the page
+Quote Post
Octobus
post
Post #5





Grupa: Zarejestrowani
Postów: 259
Pomógł: 1
Dołączył: 3.07.2011

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


Wiem jak to usunac ale nie wiem jak "chwycic" wszystkie nieinteresujace mnie slowa. Jedyny pomysl to tablica z nimi ...
Go to the top of the page
+Quote Post
Pawel_W
post
Post #6





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

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


odnośnie usuwania, prościej chyba http://www.php.net/manual/pl/function.str-word-count.php
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: 14.09.2025 - 15:18