Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich URLs mithilfe von PHP und regulären Ausdrücken effizient aus Text extrahieren?

Wie kann ich URLs mithilfe von PHP und regulären Ausdrücken effizient aus Text extrahieren?

DDD
Freigeben: 2024-12-14 12:59:14
Original
152 Leute haben es durchsucht

How Can I Efficiently Extract URLs from Text Using PHP and Regular Expressions?

Effiziente URL-Extraktion aus Text in PHP

Abfrage

Extrahieren Sie URLs aus dem folgenden Text insbesondere mithilfe regulärer Ausdrücke preg_match():

$string = "this is my friend's website http://example.com I think it is coll";
Nach dem Login kopieren

Antwort

Um die URL aus der bereitgestellten Zeichenfolge zu extrahieren, ist die Nutzung regulärer Ausdrücke ein geeigneter Ansatz. Ein effektives Regex-Muster ist:

preg_match_all('#\bhttps?://[^\s()<>]+(?:\([\w\d]+\)|([^[:punct:]\s]|/))#', $string, $match);
Nach dem Login kopieren

Dieser Regex gleicht gültige URLs ab, indem er sicherstellt, dass sie mit „http“ oder „https“ beginnen, eine Domäne ohne Leerzeichen oder Sonderzeichen enthalten und optional Parameter oder Pfadinformationen enthalten.

Es gibt jedoch eine Einschränkung, die berücksichtigt werden muss. Fehlerhafte URLs wie „http://google:ha.ckers.org“ werden durch dieses Muster möglicherweise nicht vollständig herausgefiltert.

Alternativ können Sie die folgende WordPress-Funktion verwenden:

make_clickable($string);
Nach dem Login kopieren

Diese Funktion wurde speziell für die Konvertierung von reinem Text in formatierte Zeichenfolgen mit anklickbaren URLs entwickelt und bietet eine robuste Methode zur URL-Extraktion.

Das obige ist der detaillierte Inhalt vonWie kann ich URLs mithilfe von PHP und regulären Ausdrücken effizient aus Text extrahieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage