Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: cudzyslowy dla tagów
Forum PHP.pl > Forum > PHP
a79rtur
witam
potrzebuje w pliku html dodać do wartości tagów cudzysłowy ,czyli np
a href=http://www.wp.pl ==> a href="http://www.wp.pl"
czy dalo by sie to zrobic wyrazeniem regularnym, jesli tak to jakim ? zbior tagów do zamiany były np w tablicy.
s_w_ir
Kurcze kilka godzin nad tym spędzilem, bo kiedy kod był dobry to mi sie nic nie wyświetlało. Szkoda że wcześniej nie wpadłem na to żeby zajżeć do źródła po wykonaniu funkcji, to bym zobaczyl że działa angrysmiley.gif
  1. <?php
  2. $a = "<a href=http://www.wp.pl>";
  3. $b = "<a href=kl>";
  4. $c = array($a, $b);
  5. echo preg_replace("/^(<[^>=]+=)([^> ]*)(>)$/",'1"2"3',$a);
  6. $d=preg_replace("/^(<[^>=]+=)([^> ]*)(>)$/",'1"2"3',$c);
  7. echo $d[0];
  8. echo $d[1];
  9. ?>
Po wykonaniu zajżyj do źródła. Kod nie działa narazie na wyrażeniach typu
  1. <font color=cos style=cos>
czyli podwójnych wartosciach taga. Pomyśle jeszcze chwile nad tym aby sie dało i takie obrobić, ale uważam że trzeba tu wykorzystać to czego jeszcze nie opanowałem w regexpach, czyli powtórne wykorzystanie wzorca na tym samym stringu podczas jednego wykonania, krótko mówiąc swego rodzaju rekurencja. Możliwe że da sie to zmontować wykorzystując jeszcze własnoręcznie napisaną funkcje która będzie powtarzać zabieg dla jedego stringa, ale tym sie nie będe zajmował.

PS. Kto mógł odpowiedzieć na pytanie o regexpy jak nie s_w_ir rolleyes.gif

----edit----
1. Prosze nie używać wylgaryzmów, nawet zamarkowanych gwiazdkami i innymi znakami. I tak wiadomo co się chciało "bluzgnąć" (taki mój neologizm winksmiley.jpg)
2. Skromnośc ponad wszystkim, ale szczeże to podziwiam bo nie znam regexpów za dobrze. Więc samozachwyt jak najbardziej na miejscu biggrin.gif
~mike_mech
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.