/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
regular expression, linieskift
Fra : Kasper Broegaard Sim~


Dato : 27-05-03 19:52

hvordan laver jeg sådan at den godtager linie skift.
Jeg regnede med at jeg bare kunne skrive \n men den gik ikke.
Er der nogen der har et link til en liste med alle regular expression
tegnene

Kasper Broegaard



 
 
Johan Holst Nielsen (27-05-2003)
Kommentar
Fra : Johan Holst Nielsen


Dato : 27-05-03 20:03



Kasper Broegaard Simonsen wrote:
> hvordan laver jeg sådan at den godtager linie skift.
> Jeg regnede med at jeg bare kunne skrive \n men den gik ikke.
> Er der nogen der har et link til en liste med alle regular expression
> tegnene

Forklar lige lidt nærmere? hvor er det du vil lave linieskift? En mail?
En formular? En tekst på websitet? eller hvorledes?

mvh
Johan


Kasper Broegaard Sim~ (27-05-2003)
Kommentar
Fra : Kasper Broegaard Sim~


Dato : 27-05-03 20:09

"Johan Holst Nielsen" <johan@weknowthewayout.com> skrev i en meddelelse
news:3ED3B658.9070808@weknowthewayout.com...
>
>
> Kasper Broegaard Simonsen wrote:
> > hvordan laver jeg sådan at den godtager linie skift.
> > Jeg regnede med at jeg bare kunne skrive \n men den gik ikke.
> > Er der nogen der har et link til en liste med alle regular expression
> > tegnene
>
> Forklar lige lidt nærmere? hvor er det du vil lave linieskift? En mail?
> En formular? En tekst på websitet? eller hvorledes?
>
> mvh
> Johan
>

Det er en variabel hvor jeg har noget tekst i.
Denne tekst indholder linieskift.
ex:
----
Hej med dig
hvordan går det.

Det var en god weekend.
----
skal laves om til:
----
<b>Hej med dig
hvordan går det.</b>
Det var en god weekend.
----
til det bruger jeg:
$tekst =
eregi_replace("\[b\]([a-z0-9~#%@æøåäöü\*\&:;.,=\?<>!'\(\)\/_\+-]+)\[/b\]",
"<b>\\1</b>",$tekst);
Det går bare kun hvis der ikke er et linie skift efter "dig".
så jeg skal have inkluderet et "linieskift" i de godkendte tegn.

Kasper Broegaard




Johan Holst Nielsen (27-05-2003)
Kommentar
Fra : Johan Holst Nielsen


Dato : 27-05-03 21:09



Kasper Broegaard Simonsen wrote:
> ----
> Hej med dig
> hvordan går det.

> Det var en god weekend.
> ----
> skal laves om til:
> ----
> <b>Hej med dig
> hvordan går det.</b>
> Det var en god weekend.
> ----
> til det bruger jeg:
> $tekst =
> eregi_replace("\[b\]([a-z0-9~#%@æøåäöü\*\&:;.,=\?<>!'\(\)\/_\+-]+)\[/b\]",
> "<b>\\1</b>",$tekst);
> Det går bare kun hvis der ikke er et linie skift efter "dig".
> så jeg skal have inkluderet et "linieskift" i de godkendte tegn.


Burde virke med \n (husk at backslashe...) men jeg kan nu heller ikke få
din funktion til at virke når der ikke er linieskift?

Men ellers lav noget ala
eregi_replace("\[b\]([^\[]+)\[/b\]","<b>\\1</b>",$tekst);

Ikke helt optimalt ;) men det virker efter eksemplerne....

Omrking linket du efterlyste ;)
http://elvin.dstc.edu.au/doc/regex.html

mvh
Johan


Kasper Broegaard Sim~ (27-05-2003)
Kommentar
Fra : Kasper Broegaard Sim~


Dato : 27-05-03 22:51


"Johan Holst Nielsen" <johan@weknowthewayout.com> skrev i en meddelelse
news:3ED3C5CB.5060703@weknowthewayout.com...
>
>
> Kasper Broegaard Simonsen wrote:
> > ----
> > Hej med dig
> > hvordan går det.

> > Det var en god weekend.
> > ----
> > skal laves om til:
> > ----
> > <b>Hej med dig
> > hvordan går det.</b>
> > Det var en god weekend.
> > ----
> > til det bruger jeg:
> > $tekst =
> >
eregi_replace("\[b\]([a-z0-9~#%@æøåäöü\*\&:;.,=\?<>!'\(\)\/_\+-]+)\[/b\]",
> > "<b>\\1</b>",$tekst);
> > Det går bare kun hvis der ikke er et linie skift efter "dig".
> > så jeg skal have inkluderet et "linieskift" i de godkendte tegn.
>
>
> Burde virke med \n (husk at backslashe...) men jeg kan nu heller ikke få
> din funktion til at virke når der ikke er linieskift?
>
> Men ellers lav noget ala
> eregi_replace("\[b\]([^\[]+)\[/b\]","<b>\\1</b>",$tekst);
>
> Ikke helt optimalt ;) men det virker efter eksemplerne....
>
> Omrking linket du efterlyste ;)
> http://elvin.dstc.edu.au/doc/regex.html
>
> mvh
> Johan
>
Tak for hjælpen
Jeg fandt ud af det virkede med \n\r istedet for \n
Og tak for linket. Det er altid sådan en referance jeg mangler når det
driller.
Kasper Broegaard



Thomas Lindgaard (28-05-2003)
Kommentar
Fra : Thomas Lindgaard


Dato : 28-05-03 16:51

"Kasper Broegaard Simonsen" <kasper@broegaard.com> wrote in news:bb0mof
$2t8q$1@news.cybercity.dk:

> Og tak for linket. Det er altid s†dan en referance jeg mangler n†r det
> driller.
>

Der er osse en ganske udmærket gennemgang af reg.exp. på php.net:

http://dk2.php.net/manual/en/pcre.pattern.syntax.php

og

http://dk2.php.net/manual/en/pcre.pattern.modifiers.php

--
Hyggehej
/Thomas

Anders K. Madsen (28-05-2003)
Kommentar
Fra : Anders K. Madsen


Dato : 28-05-03 19:03

> Kasper Broegaard Simonsen wrote:
>
>> ----
>> Hej med dig
>> hvordan går det.

>> Det var en god weekend.
>> ----
>> skal laves om til:
>> ----
>> <b>Hej med dig
>> hvordan går det.</b>
>> Det var en god weekend.
>> ----
>> til det bruger jeg:
>> $tekst =
>> eregi_replace("\[b\]([a-z0-9~#%@æøåäöü\*\&:;.,=\?<>!'\(\)\/_\+-]+)\[/b\]",
>> "<b>\\1</b>",$tekst);

Hvorfor ikke bare bruge nl2br()? http://dk.php.net/nl2br
Den erstatter alle \n, \r\n og (\r (?) Mac-Newlines) med <br />.

$var = "Hello\nWorld!";
$var = nl2br($var);
echo $var;
// Outputter: "Hello<br />World!".

Mvh.
   Madsen


Christian Joergensen (29-05-2003)
Kommentar
Fra : Christian Joergensen


Dato : 29-05-03 01:27

On Tue, 27 May 2003 20:51:31 +0200, Kasper Broegaard Simonsen wrote:

> hvordan laver jeg sådan at den godtager linie skift. Jeg regnede med at
> jeg bare kunne skrive \n men den gik ikke. Er der nogen der har et link
> til en liste med alle regular expression tegnene

Hvis du bruger perl regex skal du huske at bruge 's' modifieren.

--
Christian Jørgensen | It's so complicated, it can't crash.
http://www.razor.dk |


Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408936
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste