/ 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
Spørgsmålstegn og ereg replace
Fra : Brian Emilius


Dato : 15-02-05 12:18

Hej NG

Jeg prøver at erstatte noget i en streng med ereg_replace, men eftersom
der er et spørgsmålstegn (?) i strengen virker ereg_replace ikke. Kan
nogen fortælle mig hvorfor og hvad jeg kan gøre ved det?

Ex:
$string = "foo?bar";
if(strstr($string, "foo?")){
   $string = ereg_replace("foo?", "", $string);
}
echo $string; // output = foo?bar

--
Venlig hilsen
Brian Emilius

 
 
Mads Sülau Jørgensen (15-02-2005)
Kommentar
Fra : Mads Sülau Jørgensen


Dato : 15-02-05 12:38

Brian Emilius wrote:

> Jeg prøver at erstatte noget i en streng med ereg_replace, men eftersom
> der er et spørgsmålstegn (?) i strengen virker ereg_replace ikke. Kan
> nogen fortælle mig hvorfor og hvad jeg kan gøre ved det?

Jada, ? betyder noget i regexp, som ikke er et ?. Gider ikke til at
forklare det nu.

Men du kan bruge str_replace i stedet for ereg_replace, da du alligevel
ikke bruger nogle regulære udtryk.

Og så bør du bruge strpos i stedet for strstr, som så:

$string = "foo?bar";
if(strpos($string, "foo?") !== false) {
   $string = str_replace("foo?", "", $string);
}
echo $string; // output = bar

--
Mads Sülau Jørgensen
"All glory to the hypno toad!"

Brian Emilius (15-02-2005)
Kommentar
Fra : Brian Emilius


Dato : 15-02-05 12:43

Mads Sülau Jørgensen ytrede:
> Men du kan bruge str_replace i stedet for ereg_replace, da du alligevel
> ikke bruger nogle regulære udtryk.
>
> Og så bør du bruge strpos i stedet for strstr

Tak for dit svar - det var lige det jeg skulle bruge

--
Venlig hilsen
Brian Emilius

Peter (15-02-2005)
Kommentar
Fra : Peter


Dato : 15-02-05 14:30

On 2005-02-15 12:38:05 +0100, =?ISO-8859-1?Q?Mads_S=FClau_J=F8rgensen?=
<dev@null.zero> said:

> Brian Emilius wrote:
>
>> Jeg prøver at erstatte noget i en streng med ereg_replace, men eftersom
>> der er et spørgsmålstegn (?) i strengen virker ereg_replace ikke. Kan
>> nogen fortælle mig hvorfor og hvad jeg kan gøre ved det?
>
> Jada, ? betyder noget i regexp, som ikke er et ?. Gider ikke til at
> forklare det nu.
>

Det kan escapes \?



Brian Emilius (15-02-2005)
Kommentar
Fra : Brian Emilius


Dato : 15-02-05 14:34

Peter ytrede:

> Det kan escapes \?

Nej, det har jeg nemlig prøvet, men jeg har fået et svar nu.

--
Venlig hilsen
Brian Emilius

Mads Sülau Jørgensen (15-02-2005)
Kommentar
Fra : Mads Sülau Jørgensen


Dato : 15-02-05 15:20

Brian Emilius wrote:

>>Det kan escapes \?
> Nej, det har jeg nemlig prøvet, men jeg har fået et svar nu.

Det kan den faktisk godt - jo.

$string = "foo?bar";
if(strstr($string, "foo?")){
   $string = ereg_replace("foo\?", "", $string);
}
echo $string; // bar

Men det ændre stadig ikke på at det er fjollet at bruge ereg eller preg
funktionerne til at lave simpel streng operationer.

--
Mads Sülau Jørgensen
"All glory to the hypno toad!"

Brian Emilius (15-02-2005)
Kommentar
Fra : Brian Emilius


Dato : 15-02-05 23:14

Mads Sülau Jørgensen ytrede:

> Det kan den faktisk godt - jo.
>
> $string = "foo?bar";
> if(strstr($string, "foo?")){
> $string = ereg_replace("foo\?", "", $string);
> }
> echo $string; // bar

Hmm... Jeg har ellers prøvet - virkede ikke.

--
Venlig hilsen
Brian Emilius

Peter (16-02-2005)
Kommentar
Fra : Peter


Dato : 16-02-05 10:48

On 2005-02-15 15:20:27 +0100, =?ISO-8859-1?Q?Mads_S=FClau_J=F8rgensen?=
<dev@null.zero> said:
> Men det ændre stadig ikke på at det er fjollet at bruge ereg eller preg
> funktionerne til at lave simpel streng operationer.

det er korrekt ... det var også mest får at påpege det...



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

Månedens bedste
Årets bedste
Sidste års bedste