Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Eregi_replace, wyrażenie regularne
majestiq
post 13.08.2008, 18:30:11
Post #1





Grupa: Zarejestrowani
Postów: 235
Pomógł: 0
Dołączył: 26.10.2006

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


  1. <?php
  2. $a=file_get_contents('zmienna.txt');
  3. $pattern = '^%([0-9]){1,2}$';
  4. $replacement = '-';
  5. $body = eregi_replace($pattern, $replacement, $a);
  6. echo $body;
  7. ?>


W pliku zmienna.txt znajduje się kilkaset linków:
<a href="(...)">...</a>.

Chcę usunąć z nazwy linku (anchor) notacje typu: %20, %30, ale też %1,
generalnie wszystko co zaczyna się od % a potem jest przynajmniej jedna, ale nie więcej niż 2 cyfry.

Mój pattern nie działa :|

Jak to przerobić ?


--------------------
Free mp3 download.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
behu
post 13.08.2008, 19:00:45
Post #2





Grupa: Zarejestrowani
Postów: 52
Pomógł: 16
Dołączył: 8.08.2008
Skąd: London

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


  1. <?php
  2. $a=file_get_contents('zmienna.txt');
  3. $pattern = '%([0-9]){1,2}';
  4. $replacement = '-';
  5. $body = eregi_replace($pattern, $replacement, $a);
  6. echo $body;
  7. ?>


Powinno działać smile.gif.


--------------------
Freelancer - [C#, PHP, MySQL, xHTML, CSS]
michal.schweichler [at] gmail.com
http://www.elance.com/s/michal_schweichler/
Go to the top of the page
+Quote Post
majestiq
post 13.08.2008, 19:22:12
Post #3





Grupa: Zarejestrowani
Postów: 235
Pomógł: 0
Dołączył: 26.10.2006

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


Heh, Ty Cwaniaku ;-)
Dzieki biggrin.gif


--------------------
Free mp3 download.
Go to the top of the page
+Quote Post
qBK
post 13.08.2008, 19:39:05
Post #4





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 9.01.2007
Skąd: Wrocław

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


Mądrzejsi ode mnie mówią na każdym kroku żeby używać rodziny funkcji preg_... zamiast ereg_... bo są znacznie szybsze i nadal rozwijane, więc się z nimi nie kłócę i Tobie też polecam smile.gif
Jedna rzecz tylko, nie istnieje pregi_replace, ale w Twoim kodzie szukasz tylko procenta i liczb więc możesz używać preg_replace" title="Zobacz w manualu PHP" target="_manual.
Pozdrawiam
Go to the top of the page
+Quote Post
majestiq
post 13.08.2008, 19:53:52
Post #5





Grupa: Zarejestrowani
Postów: 235
Pomógł: 0
Dołączył: 26.10.2006

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


Dzięki za wskazówkę.


--------------------
Free mp3 download.
Go to the top of the page
+Quote Post
rzymek01
post 13.08.2008, 22:02:46
Post #6





Grupa: Zarejestrowani
Postów: 592
Pomógł: 62
Dołączył: 3.08.2006

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


Cytat(qBK @ 13.08.2008, 20:39:05 ) *
Jedna rzecz tylko, nie istnieje pregi_replace

ale istnieje flaga i (case insensitive) do preg.... dzięki której omijana jest wielkość znaków


--------------------
:]
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: 14.08.2025 - 06:31