Avatar billede thingholm.dk Nybegynder
02. juli 2003 - 20:57 Der er 10 kommentarer og
1 løsning

Søg i streng og opret variabler

Hej

Jeg har en streng som denne:

******

/></td></tr></table></td></tr>
</form></table><pre>This is the RIPE Whois server.
The objects are in RPSL format.
Rights restricted by copyright.
See <a href="http://www.ripe.net/ripencc/pub-services/db/copyright.html">http://www.ripe.net/ripencc/pub-services/db/copyright.html</a>
</pre><pre><b><u>inetnum</u></b>:      80.199.4.0 - 80.199.7.255
netname:      TDC-INTERNET-STATIC-ASSIGNED-IP
descr:        TDC NetExpres users
country:      DK

*****

Jeg kunne godt tænke mig at oprette 3 variabler som dette:

$netname = "TDC-INTERNET-STATIC-ASSIGNED-IP";
$describtion = "TDC NetExpres users";
$country = "DK";

Jeg håber at nogen kan hjælpe :-)

VH

Anders Thingholm
Avatar billede erikjacobsen Ekspert
02. juli 2003 - 22:04 #1
if (preg_match('/^netname:\s*(.*)/im',$s,$r)) {
  $a=$r[1];
}
if (preg_match('/^descr:\s*(.*)/im',$s,$r)) {
  $b=$r[1];
}
if (preg_match('/^country:\s*(.*)/im',$s,$r)) {
  $c=$r[1];
}

print "$a $b $c";
Avatar billede thingholm.dk Nybegynder
02. juli 2003 - 22:36 #2
Super!

Hvad gør jeg hvis der er 2 ens i strengen, som f.eks denne:

netname:      DK-TELEDANMARK-20001102
descr:        TELE DANMARK
descr:        Provider Local Internet Registry
country:      DK
Avatar billede erikjacobsen Ekspert
02. juli 2003 - 22:40 #3
Siger til mig hvad du så vil have ud af det!
Avatar billede thingholm.dk Nybegynder
02. juli 2003 - 22:43 #4
Er ikke med på hvad du mener...
Avatar billede erikjacobsen Ekspert
02. juli 2003 - 22:44 #5
Hvad vil du have ud af det, når det står 2 eller flere gange?
Avatar billede erikjacobsen Ekspert
02. juli 2003 - 22:45 #6
Dette??

if (preg_match_all('/^netname:\s*(.*)/im',$s,$r)) {
  $a=join(", ",$r[1]);
}
if (preg_match_all('/^descr:\s*(.*)/im',$s,$r)) {
  $b=join(", ",$r[1]);
}
if (preg_match_all('/^country:\s*(.*)/im',$s,$r)) {
  $c=join(", ",$r[1]);
}

print "$a <br>$b <br> $c";
Avatar billede thingholm.dk Nybegynder
02. juli 2003 - 22:45 #7
Hvis jeg kan lokke dig til det, må du meget gerne forklare hvad denne gør:

  if (preg_match('/^netname:\s*(.*)/im',$s,$r)) {
Avatar billede thingholm.dk Nybegynder
02. juli 2003 - 22:48 #8
Lige præcis :-)
Avatar billede erikjacobsen Ekspert
02. juli 2003 - 22:48 #9
Det kan ikke lade sig gøre på få linier. Læs på www.php.net ;)
Skal du have forklaring med, må jeg bede dig om at afvise mit svar.
Avatar billede thingholm.dk Nybegynder
02. juli 2003 - 22:51 #10
Nej, det er sgu ok ;-)

1000 Tak!
Avatar billede erikjacobsen Ekspert
02. juli 2003 - 22:59 #11
Ok - men jeg kan godt forstå dig, hvis du gerne vil forstå hvad der
sker. Den dag, der skal rettes lidt i det, kan du få et problem.

Men ellers er regulære udtryk den bedste opfindelse siden
hot-dog-en, P-pillen, og blå Smarties.
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