Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Usuwanie powtarzających się znaków
-Seb@-
post
Post #1





Goście







Witam, prubuję stworzyć skrypt usuwający z pliku plik.txt cały wiersz w którym jakaś litera lub cyfra powtarza się wiecej niż 2 razy. Narazie udało mi się stworzyć skrypt do usuwania wybranego wiersa, ale nie mam pojęcia ajk zabrać się za wyszukiwanie powtarzających się znaków sad.gif Proszę o pomoc w napisaniu tego
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
_Borys_
post
Post #2





Grupa: Zarejestrowani
Postów: 587
Pomógł: 190
Dołączył: 5.02.2011
Skąd: 64-800

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


Użyj count_chars(), potem sprawdzasz czy w tablicy jest wartość większa niż dwa, wtedy usuwasz wiersz
  1. foreach (count_chars($line, 1) as $val) {
  2. if($val > 2){
  3. //usuń wiersz
  4. }
  5. }

Jeśli chcesz sprawdzać tylko litery i cyfry to wtedy sprawdzasz dodatkowo klucze z kodem znaków, zależy jakie kodowanie jest ustawione.
A jeśli chodzi tobie o powtarzające się znaki jeden po drugim to można zrobić przy pomocy wyrażeń regularnych.

Ten post edytował _Borys_ 5.12.2013, 21:22:07
Go to the top of the page
+Quote Post
-Seb@-
post
Post #3





Goście







Tak, chodzi własnie o powtarzające się jeden po drugim. Mogłbyś powiedzieć jak zrobić to wyrażeniami regularnymi?
Go to the top of the page
+Quote Post
_Borys_
post
Post #4





Grupa: Zarejestrowani
Postów: 587
Pomógł: 190
Dołączył: 5.02.2011
Skąd: 64-800

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


Dla więcej niż dwóch powtórzeń
  1. if(preg_match('/([a-zA-Z0-9])\1\1/',$line)){
  2. //usuwanie wiersza
  3. }
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 Aktualny czas: 20.08.2025 - 15:44