Archiv verlassen und diese Seite im Standarddesign anzeigen : Bitte Hilfe
Hallo,
kann mir jemand schnell helfen, ich habs mit regex nur sehr laienhaft :(
Aus diesem String
"...domain.com/1/5/1/Tourist-Information.html"
brauche ich die rote Zahl, denn das ist die Info, in welcher Sprache die Seite ist und ich möchte das gerne so in meiner Datenbank speichern.
Ich arbeite mit PHP und Mysql.
Ich danke Euch sehr herzlich für die Rettung!
Godfather
27.07.2005, 17:35
So habs jetzt ma stur hingeklatscht;
#!/usr/bin/perl
my $line = "...domain.com/1/5/1/Tourist-Information.html";
$line =~ m/\.+\w+\.\w+\/\d+\/(\d)\/\d\/\w+-?\w+\.\w+/;
print $1;
ist zwar perl aber sollte eigentlich keinen großen Unterschied machen
MFG
GODFATHER
So habs jetzt ma stur hingeklatscht;
#!/usr/bin/perl
my $line = "...domain.com/1/5/1/Tourist-Information.html";
$line =~ m/\.+\w+\.\w+\/\d+\/(\d)\/\d\/\w+-?\w+\.\w+/;
print $1;
ist zwar perl aber sollte eigentlich keinen großen Unterschied machen
MFG
GODFATHER
Ach du lieber Himmel, ob Du mir auch erklären kannst, was das zu bedeuten hat?
übrigens:
$line = "http://www.domain.com/1/5/1/Tourist-Information.html";
$line = preg_match("m/\.+\w+\.\w+\/\d+\/(\d)\/\d\/\w+-?\w+\.\w+/", $line);
print $line;
geht leider nicht:
Warning: Delimiter must not be alphanumeric or backslash in D:\htdocs\test.php on line 4
Scheinbar Lásst sich Perl nicht so einfach in PHP umschreiben?
butterkeks
28.07.2005, 00:36
fast:
$line = "http://www.domain.com/1/5/1/Tourist-Information.html";
preg_match("m/\.+\w+\.\w+\/\d+\/(\d)\/\d\/\w+-?\w+\.\w+/", $line, $result);
print $result[1];
siehe doku
Godfather
28.07.2005, 00:41
übrigens:
geht leider nicht:
Warning: Delimiter must not be alphanumeric or backslash in D:\htdocs\test.php on line 4
Scheinbar Lásst sich Perl nicht so einfach in PHP umschreiben?
No Problem
<?php
$url = "http://www.domain.com/1/5/1/Tourist-Information.html";
// Funktion preg_match() muss die Variable matches übergeben werden.
// Diese enthält die Ergebnis aus der Gruppierung.
// Es wird angenommen, dass die Versionsnummer und alle anderen Nummern
// nach ...domain.com mehrere Zahlen enthalten können. ACHTUNG keine
// Dezimalzahlen
preg_match("/^http:\/\/?[^\/]+\/\d+\/(\d+)\/\d+\/[^\/]+\.html/", $url, $matches);
print $matches[1]; //<- Hier ist die Versionsnummer gespeichert
?>
Ok, erwischt, hätte ich besser lesen müssen! Ganz herzlichen Dank!
Ob sich trotzdem jemand die Mühe machen will mir zu erklären, wie die obige regex zu lernen/verstehen ist?
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.