Ich weiß, es gibt filter_var()
, aber ich möchte nicht eine URL validieren, ich möchte sie in einem ganzen Text (z. B. ein Tweet). Also hast du eine Idee?Wie finde ich URLs in einem String mit PHP?
Antwort
es Siehe hier:
Mit einem Regex sollte darauf achten. Dies funktioniert im Grunde für Twitter
$text=$a_twitter_message;
preg_match_all("/http:\/\/(.*?)\/? /", $text, $link_match);
var_dump($link_match);
Die regulären Ausdruck Lösungen sind in Ordnung, aber hier ist eine weitere einfache Art und Weise: strpos verwenden.
if(strpos($text, "http://") !== false) { print "url found"; }
Verwenden Sie Stripos für die Groß- und Kleinschreibung.
Beachten Sie auch, dass die anderen Beispiele für reguläre Ausdrücke nicht nach "https" oder nur URLs suchen, die mit "www" beginnen!
Und wie URLs dann zu extrahieren? – seriousdev
Ich glaube ich habe deinen Beitrag missverstanden..es sagte 'Spot', nicht extrahieren..Aber ich denke Extrakt macht mehr Sinn;) – Oli
- 1. URLs aus einem String extrahieren mit PHP
- 2. Wie finde ich einen String in einem Array in PHP?
- 3. Wie finde ich das letzte Wort in einem String sqlite3
- 4. Wie ersetze ich eine Variable in einem String mit PHP?
- 5. Finde einen möglichen Teilstring in einem anderen String mit mysql
- 6. Whitelisting URLs in PHP
- 7. finde ganze Zahlen verbunden mit - in string php
- 8. Wie finde ich nicht-length-spezifizierte Teilstrings in einem String in Objective-C?
- 9. Wie finde ich die Anzahl der Bytes in UTF-8-String mit PHP?
- 10. Wie entferne ich einen Teilstring aus einem String mit PHP?
- 11. Wie finde ich ein String-Muster in einem String-Ausdruck Java?
- 12. Wie finde ich passende URLs außer bestimmten Abfragezeichenfolgen?
- 13. Umgang mit RESTful URLs PHP
- 14. Wie finde ich ein Land mit IP-Adresse in PHP?
- 15. wie aus einem String in PHP
- 16. Wie wähle ich mehrere URLs mit request_uri
- 17. ich mit einem String
- 18. Finde URLs, @Antworten und #Hashtags von Tweets
- 19. Formatierung mit einem String mit PHP
- 20. Wie finde ich meine php-fpm.sock?
- 21. Wie finde ich einen Teilstring in einem Feld in Mongodb?
- 22. Wie finde ich div in einem anderen div mit HtmlUnit?
- 23. Wie finde ich die Ecken in einem Skelettbild mit Matlab?
- 24. Wie formatiere ich Datetime-String in PHP?
- 25. code website in php mit sef urls
- 26. Wie behebe ich SEO URLs mit Lighttpd?
- 27. Wie finde ich Werte in einem verschachtelten JSON-Array mit PHP
- 28. Linux finde Dateien mit String und ersetzen
- 29. Wie finde ich den [x] [Tag] des Monats in PHP?
- 30. Cut String vor einem Symbol mit PHP
Das scheint den Trick zu tun, danke. Wofür sind die '@'? – seriousdev
@sexyprout Regexps sind normalerweise mit/slashes/begrenzt, aber das kann Dinge schwer lesbar machen, wenn Sie im regulären Ausdruck nach Schrägstrichen suchen (wie Sie es sind, um 'http://www.example.com/ zu analysieren). was auch immer ...), weil Sie den Schrägstrich-Zeichen in dem Ausdruck entkommen müssen. Um es einfacher zu machen, können Sie jedes Zeichen verwenden, das Ihren regulären Ausdruck abgrenzen soll. In diesem Fall wird "@" als ein beliebiges Zeichen ausgewählt, das nicht im Ausdruck selbst erscheinen muss. Zum Beispiel sind die regulären Ausdrücke '/ http: \/\/(. *) \/(. *) /' Und '@http: // (. *)/(. *) @' Gleichwertig –
Oh yeah, Ich habe die Trennzeichen total vergessen, danke! – seriousdev