OffTopic: Was zwar unnötig war, aber ich kann aus eigener Erfahrung sagen: Besser lieber einmal mehr, als zu wenigOriginal geschrieben von onemorenerd
OffTopic: 
Ich wollte nur auf die Regeln hinweisen..
Feste URL parsen
				
					Einklappen
				
			
		
	X
- 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
Okay, ich muss - leider - noch einmal nerven.
Ich möchte alle URLs passen, die innerhalb eines href-Tages vorkommen - wie mache ich das? Das Problem ist, dass dies auf Basis des vorhandenen Codes passieren muss:
Das Skript sollte sowohl href="XY" also auch href='' erkennen. Ich bekomme es leider nicht funktionsfähig hin.PHP-Code:<?php
if(preg_match_all('!(' . getURLParse($url) . '[^\s]*)!i',
$value, $matches)) {
// ...
}
?>
Zur Erläuterung:
PHP-Code:<?php
function getURLParse($url) {
$url = str_ireplace(".", "\\.", $url);
$url = str_ireplace("-", "\\-", $url);
return $url;
}
?>
Kommentar
 - 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
Es kommt kein Fehler, aber auch kein Suchergebnis:
Was ist falsch?Code:!(href=[\"\\']' . getURLParse($url) . '[^\s]*[\"\\'])!i
Ein fehlerhafter Tag, der akzeptiert wird und wie man damit umgeht? Mir ist kein "fehlerhafter" href-Tag bekannt?! Google-Suche brachte auch nichts. Der Regexp akzeptiert doch lediglich href="XY" bzw. href='XY'.
Edit: Ah, "nohref"!Zuletzt geändert von frederic; 15.08.2007, 11:53.
Kommentar
 - 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
falsch ist, dass du nicht debuggst. mit dem regexp-evaluator.de kannst du den ausdruck stückweise aufbauen und zusehen, worauf er zutrifft. das ist immer besser, als "aus dem bauch".Was ist falsch?
nicht nur. überlege noch mal.Der Regexp akzeptiert doch lediglich href="XY" bzw. href='XY'.
Kommentar
 - 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
Ich finde den Fehler einfach nicht. Habe zwar hin und her probiert (mit Backslashes und Befehle an eine andere Stelle), aber es bleibt stehts fehlerhaft:
http://regexp-evaluator.de/evaluator...0608/#ergebnis
Mh.. Es gibt noch "hreflang". Gibt es ggf. eine Möglichkeit, href-Tags zu manipulieren?
Edit: Nein, hreflang kann es nicht sein, da er ja "href=" parst.Zuletzt geändert von frederic; 15.08.2007, 12:10.
Kommentar
 - 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
Okay, ich habe etwas:
http://regexp-evaluator.de/evaluator...a484/#ergebnis
Edit: Allerdings ist das keine Lösung, weil ich im o.g. Regexp ein Fehler der Seite behoben musste. Bei mir funktioniert dies nicht.Zuletzt geändert von frederic; 15.08.2007, 12:21.
Kommentar
 - 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
Ja, schon einmal gehört. Das wäre wohl besser statt meine Funktion getURLParse.
Zu deiner zweiten Frage: Ich habe fest definierte URLs z. B. nach dem Muster "http://www.spiegel.de". Der Regexp soll nur URLs UNTERHALB dieser URL finden, also z. B. "http://www.spiegel.de/politik/", nicht aber "http://forum.spiegel.de/xy/". Deshalb "[^\s]".
Kommentar
 - 
	
	
	
		
	
	
		
		
		
		
		
		
		
	
	
Es scheint anscheinend auch zu funktionieren. Nur: Er hat Probleme, wenn ich
[/"/']
verwende. Und außerdem haben wir das (angebliche) href-Problem noch nicht behoben. Zum anderen: Warum parst regexp-evaluator.de mehr als href="XY" raus?
Kommentar
 
          
.
Kommentar