Avatar billede ibenhjejle Nybegynder
01. september 2003 - 21:54 Der er 25 kommentarer og
1 løsning

hjælp til ereg_replace

Hej.

Hvordan gør man med ereg_replace så man får det der står mellem [script] og [/script] til at køre denne funktion PTS($detimellem)

noget med
$Post = ereg_replace('noget', PTS($detimellem));

$Post er mit indhold...
Avatar billede schaefner Juniormester
01. september 2003 - 22:12 #1
$Post = preg_replace("/\[script\](.*)\[\/script\]/isUe", "PTS('\\1')", $Post);
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 22:15 #2
hmm.. nå PTS er en funktion skal den da ikke være indrammet med " og "
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 22:15 #3
eller..?
Avatar billede schaefner Juniormester
01. september 2003 - 22:16 #4
jo
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 22:16 #5
ok.. Hvorfor egentlig, kan php godt finde ud af at PTS er en funktion?
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 22:18 #6
Hvis jeg nu skal have "scripts/" foran det der er imellem, hvad skriver jeg så?
Avatar billede schaefner Juniormester
01. september 2003 - 22:18 #7
http://dk.php.net/manual/en/pcre.pattern.modifiers.php

p.g.a. at der er sat "e" på det regulæere udtryk

"If this modifier is set, preg_replace() does normal substitution of backreferences in the replacement string, evaluates it as PHP code, and uses the result for replacing the search string.

Only preg_replace() uses this modifier; it is ignored by other PCRE functions."
Avatar billede schaefner Juniormester
01. september 2003 - 22:19 #8
skal outputtet være: scripts/det der blev fundet ?
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 22:20 #9
ja "scripts/" + det der var imellem [scripts] og [/scripts]
Avatar billede schaefner Juniormester
01. september 2003 - 22:24 #10
$Post = preg_replace("/\[script\](.*)\[\/script\]/isUe","'scripts/'.PTS('\\1')", $Post);
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 22:25 #11
Takker...tester lige.. :)
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 22:30 #12
har fundet en fejl, den sletter "." i strengen, hvordan får jeg det væk, det er nemlig filnavne der skal stå der
Avatar billede schaefner Juniormester
01. september 2003 - 22:33 #13
det regulære udtryk fjerner ikke punktummet. Mon ikke det er din egen funtkion?

Har lagt det ud her: http://schaefner.users.whitehat.dk/junk/395611.php

den farver det rød, men fjerner ikke punktummet.
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 22:37 #14
ja er sikker på det ikke er min funktion fordi når jeg fjerner så den ike bruger min funktion så er . der heller ikke
Avatar billede schaefner Juniormester
01. september 2003 - 22:37 #15
hvad gør din funktion og hvordan ser den tekst ud du prøver at køre igennem?
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 22:39 #16
Tekst:
Her kommer billederne så...

[script]read.txt[/script]

Funktion:
function FileToString($FileName) {

$handle = fopen ($FileName, "r");
while (!feof ($handle)) {
    $buffer = fgets($handle, 4096);
    $text = $text . $buffer;
}
fclose ($handle);

return $text;
}
Avatar billede schaefner Juniormester
01. september 2003 - 22:41 #17
hvad skal den så returnere? Teksten fra filen og hvad mere?
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 22:41 #18
nej min fejl
Avatar billede schaefner Juniormester
01. september 2003 - 22:42 #19
function FileToString($FileName) {
  $handle = fopen ($FileName, "r");
  while (!feof($handle)) {
    $text .= fgets($handle, 4096);
  }
  fclose ($handle);
  return $text;
}
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 22:53 #20
hmm.. det virker ikke...
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 22:53 #21
$Post = preg_replace("/\[script\](.*)\[\/script\]/isUe","'/scripts/'.\\1", $Post); <- prøv lige den kode
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 22:55 #22
kan se på http://schaefner.users.whitehat.dk/junk/395611.php at det heller ikke virker ved dig
Avatar billede schaefner Juniormester
01. september 2003 - 23:00 #23
$Post = preg_replace("/\[script\](.*)\[\/script\]/isU","/scripts/\\1", $Post);
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 23:07 #24
og med funktion=?
Avatar billede schaefner Juniormester
01. september 2003 - 23:08 #25
$Post = preg_replace("/\[script\](.*)\[\/script\]/isUe","'/scripts/'.PTS('\\1')", $Post);
Avatar billede ibenhjejle Nybegynder
01. september 2003 - 23:08 #26
Har fundet ud af det :) takker mange gange.-
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester