31. januar 2003 - 17:19
Der er
3 kommentarer og 1 løsning
greppe specifik text fra $fetch[Body]
Hey.. jeg har $fetch[Body] Her skal jeg "greppe" 2 email adresser. et eller andet sted i denne står der From: "navn" <email@adresse.domain> To: "navn" <email@adresse.domain> "from" email adressen skulle jeg gerne have over i $from "to" email adressen skulle jeg gerne have over i $to Og i $fetch[Subject] Skal jeg finde WARNING : xxxxxxxxxxxxxxxxxxx dvs. "WARNING :" og så skal jeg bruge det næste ord, indtil der kommer et mellemrum - og det skal i $warning Så dette er en høflig forspørgelse på om der er nogen der kan hjælpe mig igennem dette?
Annonceindlæg fra Pax8
31. januar 2003 - 18:16
#1
Første problem: preg_match("/From:.+<(.+)>.+To:.+<(.+)>/", $fetch[Body], $matches); $from = $matches[1]; $to = $matches[2]; Andet problem: preg_match("/WARNING : ([^ ]+)/", $fetch[Subject], $matches); $warning = $matches[1]; Mvh Jesper Naur
31. januar 2003 - 18:38
#2
Første problem virker vist ikke... Jeg har forsøgt at teste med følgende: $fetch[Body] = <<< EOF From: "Michael Andreasen" <michael@1go.dk> To: "Michael Andreasen" <michael@1go.dk> Subject: dddd Date: Fri, 31 Jan 2003 18:30:56 +0100 EOF; preg_match("/From:.+<(.+)>.+To:.+<(.+)>/", $fetch[Body], $matches); $from = $matches[1]; $to = $matches[2]; Kan ikke rigtigt se fejlen.. disse preg_match driver mig til vanvid :o) Andet problem virker perfekt dog. :o))
31. januar 2003 - 18:46
#3
Prøv: preg_match("/From:.+<(.+)>.+To:.+<(.+)>/s", $fetch[Body], $matches); $from = $matches[1]; $to = $matches[2]; Jeg har tilføjet 's' som modifier, derved bør den begynde at tillade linieskift i input.