preg_replace i usuwanie spacji przed <br />

2006-09-03 17:10
studnia
0

Witam

Mam tekst w HTMLu:

The piano keys are black and white    

But they sound like a million colours in your mind 


         
        
          
           
   Katie Melua  
    

no i chce usunac spacje ( ) ktore wystepuja na koncach linii, wydumalem takie cos:

$tresc = preg_replace("/(&nbsp;)+(<.*>)*(<br??>)+/","\\2\\3",$tresc);

ale mi cholerstwo nie dziala :/
Pomozcie.

Dzieki

Kurcze, tagi mi zjadlo przed tymi
, moze tak pojdzie:

<i>The piano keys are black and white&nbsp;&nbsp;&nbsp;&nbsp;<br />
But they sound like a million colours in your mind</i><br />
<b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp; Katie Melua&nbsp;&nbsp;</b>&nbsp;&nbsp;&nbsp;&nbsp;<br />

Sorki za podwojne wpisy.

// połamałem linie bo rozwalało stronę - ktos

Pozostało 580 znaków

2006-09-03 18:26
0

Cos takiego?
$tresc = preg_replace('/(?:&nbsp;)+(<br(?: +\/)>)/', '$1', $tresc);
Nie sprawdzalem tego, nie wiem nawet czy w drugim parametrze cudzyslowy czy apostrofy...

// ach ta szybka edycja pod Opera... normalnie uzywam polskich liter - J. J. J.


php if ($crazy) sqrt() or die;

Pozostało 580 znaków

2006-09-03 19:58
studnia
0

Dziala mniodnie :-) Dzieki.

Jeszcze mi tylko napisz co dokladnie oznacza zapis ?: bo nie spotkalem sie z nim.

pozdrawiam

Pozostało 580 znaków

2006-09-03 20:44
maniek_2
0

Oznacza, że to co jest po ?: w nawiasie nie będzie w wyniku, chociaż w badanym wyrażeniu zaznaczone jest jako grupa w nawiasach.

Pozostało 580 znaków

2006-09-03 21:52
nav
0
Jojersztajner napisał(a)

// ach ta szybka edycja pod Opera... normalnie uzywam polskich liter - J. J. J.
W O9 działały poprawnie. W poprzednich nie mam pojecia co jest nie tak :/


utf-8 rlz! ٩(ಥ_ಥ)۶

Pozostało 580 znaków

2006-09-06 19:26
0

a nie możnaby usunąć   tak?

$tresc=str_replace('&nbsp;', '', $tresc);

Stopki brak.

Pozostało 580 znaków

2006-09-06 20:37
0
studnia napisał(a)

chce usunac spacje ( ) ktore wystepuja na koncach linii

czytanie ze zrozumieniem sie klania...


Pozostało 580 znaków

2006-09-07 13:57
0
Marooned napisał(a)

czytanie ze zrozumieniem sie klania...

:-[ [diabel] :-[ :-[ :-[ [diabel] [diabel] [diabel]

Najprościej usunąć te zbędne &Nbsp; a później dodać je z powrotem [rotfl] wielkie nieba problemy ludzie mają... :d :d


Stopki brak.

Pozostało 580 znaków

2006-09-07 15:47
0

E... A jak sobie to wyobrażasz? Nonsens. Jest podane banalne wyrażenie regularne które jest najbardziej eleganckim i najwydajnieszym sposobem na wykonanie tej operacji. A Ty szukasz drogi na około.


Grunt to uziemienie...

Pozostało 580 znaków

2006-09-07 22:19
0

Nie, po prostu zawsze zastanawia mnie fakt "co by było jeśli" i na liście jest nie używanie wyrażeń regularnych, jak i nie używanie klas. Może w wersji php6 nie będzie tych udogodnień?

jeśli któremuś modowi to przeszkadza to skasujcie


Stopki brak.

Pozostało 580 znaków

2006-09-07 23:13
0

chyba patrzysz nie w tą stronę - może powinieneś przerzucić się na php 1 - tam może jeszcze nie było wyrażeń, ale na pewno nie było klas, ja tam nie wiem bo php używam od wersji późnej 3

za to w php 6 ma nie być takich udogodnień jak register globals czy magic quotes - mówię bo wyglądasz mi na zwolennika takich rzeczy

za to usunięcie zbędnych " " i ich przywrócenie, w celu usunięcia zbędnych " " to najlepszy sposób na problem jaki słyszałem


Dwie zasady gwarantujące sukces:
1. Nigdy nie mów nikomu wszystkiego<span style="color: white">

Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0