/ 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
mærkelig fejl
Fra : Mads Møllegaard @ Re~


Dato : 10-12-01 13:20

den fejler ved :
$input = eregi_replace("(","_",$input);

men ikke ved :
$input = eregi_replace(")","_",$input);

hvorfor det ?

pft.



 
 
Mads Møllegaard @ Re~ (10-12-2001)
Kommentar
Fra : Mads Møllegaard @ Re~


Dato : 10-12-01 13:50

jeg prøver på eksperten.dk også!


"Mads Møllegaard @ Releaze" <mads@releaze.dk> wrote in message
news:9v2992$p92$1@sunsite.dk...
> den fejler ved :
> $input = eregi_replace("(","_",$input);
>
> men ikke ved :
> $input = eregi_replace(")","_",$input);
>
> hvorfor det ?
>
> pft.
>
>



Anton Stonor (10-12-2001)
Kommentar
Fra : Anton Stonor


Dato : 10-12-01 14:39

On Mon, 10 Dec 2001 13:20:01 +0100, "Mads Møllegaard @ Releaze"
<mads@releaze.dk> wrote:

>den fejler ved :
>$input = eregi_replace("(","_",$input);

$input = eregi_replace("\(","_",$input);

skulle virke.

Mads Møllegaard @ Re~ (10-12-2001)
Kommentar
Fra : Mads Møllegaard @ Re~


Dato : 10-12-01 14:46

"Anton Stonor" <stonor@yahoo.com> wrote in message
news:3c14b69d.21460148@news.worldonline.dk...
> On Mon, 10 Dec 2001 13:20:01 +0100, "Mads Møllegaard @ Releaze"
> <mads@releaze.dk> wrote:
>
> >den fejler ved :
> >$input = eregi_replace("(","_",$input);
>
> $input = eregi_replace("\(","_",$input);
>
> skulle virke.

yup tak....



Geir Eivind Mork (10-12-2001)
Kommentar
Fra : Geir Eivind Mork


Dato : 10-12-01 14:42

Mads Møllegaard @ Releaze wrote:

> den fejler ved :
> $input = eregi_replace("(","_",$input);


det er fordi ( er et spesial-tegn i ereg_replace, men for all del. skal
du ikke bytte ut noe ved hjelp av regexp så bruk str_replace.
str_replace er ca 10 ganger raskere.


Peter Brodersen (10-12-2001)
Kommentar
Fra : Peter Brodersen


Dato : 10-12-01 19:46

On Mon, 10 Dec 2001 14:42:00 +0100, Geir Eivind Mork <mork@php.no>
wrote:

>det er fordi ( er et spesial-tegn i ereg_replace, men for all del. skal
>du ikke bytte ut noe ved hjelp av regexp så bruk str_replace.
>str_replace er ca 10 ganger raskere.

.... og hvis man endelig skal bruge regulære udtryk, så bør man glemme
ereg og vænne sig til at bruge preg_*, fx preg_replace.

--
- Peter Brodersen
24 Days of Crashmas - julekalender:
http://jul.bums.dk/

Jonas Koch Bentzen (10-12-2001)
Kommentar
Fra : Jonas Koch Bentzen


Dato : 10-12-01 20:15

Peter Brodersen skrev:
>
> ... og hvis man endelig skal bruge regulære udtryk, så bør man glemme
> ereg og vænne sig til at bruge preg_*, fx preg_replace.

Arh, sikke noget fis! : ) Hvis man bruger flere sprog, så er der mange
fordele i at gøre kodningen så ensartet som muligt - og der gør det det
hele nemt, at man bruger POSIX-regulære udtryk frem for Perls
tilsvarende, fordi POSIX-regulære udtryk understøttes af flere sprog.

Klart nok, hvis ens sekundære sprog er Perl, så er der fordele i at
bruge Perls regulære udtryk - men at sige helt generelt, at man bør
glemme ereg, det er at gå for langt. Godt nok er preg hurtigere end
ereg, men for begge gælder det, at de sløver indlæsningstiden, og om
man bruger det ene eller det andet, er i for sig en smagssag. Derimod
skal man sørge for generelt at undgå at bruge regulære udtryk der, hvor
man kunne bruge almindelige stengfunktioner som strstr, strpos osv.

--
Jonas Koch Bentzen

http://understroem.dk/

Peter Brodersen (10-12-2001)
Kommentar
Fra : Peter Brodersen


Dato : 10-12-01 22:45

On Mon, 10 Dec 2001 20:14:55 +0100, Jonas Koch Bentzen
<ingen.emailadresse@eksempel.dk> wrote:

>> ... og hvis man endelig skal bruge regulære udtryk, så bør man glemme
>> ereg og vænne sig til at bruge preg_*, fx preg_replace.
>Arh, sikke noget fis! :)

Det er udelukkende af performancehensyn. Jeg var også mere hjemmevant
i POSIX-udtryk, men ereg var blot lidt af en blindgyde. .{1,255} er
ret sløvt, og ved {x,y} kan y ikke være højere end 255. Skal man
arbejde hårdt med regulære udtryk, kan man lige så godt bruge preg i
første omgang. Skal man arbejde simpelt med regulære udtryk, kan man
lige så godt bruge preg i første omgang (da [\s] er mindre forvirrende
end [[:space:]], når man både skal holde styr på POSIX-udtryk og
klasser i første omgang).

Flere forholdsvis simple regulære udtryk fik fire-til-femdoblet
hastigheden, udelukkende ved skift fra ereg til preg_match. Den slags
forstyrrer min nattesøvn (jeg bliver også urolig og får sved på
håndfladerne, når TV3 fx aflyser Simpsons).

I mange tilfælde er jeg enig om ting som noget med at vælge det
rigtige værktøj, plus hvad vi ellers plejer at gå og sige. Men
ereg-tingen er der ikke meget positivt at sige om. Jeg ser ingen grund
til at begynde at arbejde med den - udover POSIX-argumentet.

>Derimod
>skal man sørge for generelt at undgå at bruge regulære udtryk der, hvor
>man kunne bruge almindelige stengfunktioner som strstr, strpos osv.

Det skal selvfølgelig ses i proportion med opgaven, ja.
--
- Peter Brodersen
24 Days of Crashmas - julekalender:
http://jul.bums.dk/

Jonas Koch Bentzen (11-12-2001)
Kommentar
Fra : Jonas Koch Bentzen


Dato : 11-12-01 10:25

Peter Brodersen skrev:
>
> Men
> ereg-tingen er der ikke meget positivt at sige om. Jeg ser ingen grund
> til at begynde at arbejde med den - udover POSIX-argumentet.

Men netop POSIX-argumentet er ret stærkt...

--
Jonas Koch Bentzen

http://understroem.dk/

Geir Eivind Mork (11-12-2001)
Kommentar
Fra : Geir Eivind Mork


Dato : 11-12-01 09:43

Peter Brodersen wrote:

> ... og hvis man endelig skal bruge regulære udtryk, så bør man glemme
> ereg og vænne sig til at bruge preg_*, fx preg_replace.


Om en trenger non-greedy og lignende som ikke POSIX regexp understøtter
så ja, preg. men ereg er raskere i og med at det er mer begrenset. Om
man bruker en større mengde regexp på siden bør en tenke over dette mtp
hastighet.

Men alt til sitt bruk. Dog jeg har det med å løse enhvert problem med en
preg :)




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

Månedens bedste
Årets bedste
Sidste års bedste