Ich schlage vor, Sie tun dies auf Ihren statischen Seiten vor dem Rendern im Browser, oder Sie werden die Last der Konvertierung Berechnung auf Ihre armen Besucher schieben. :) Hier ist, wie Sie es in Ruby tun könnte (von stdin zu lesen, zu schreiben stdout):
while line = gets
puts line.gsub(/(^|[^"'])(http\S+)/, "\\1<a href='\\2'>\\2</a>")
end
Offensichtlich sollten Sie darüber nachdenken, wie diese so robust zu machen, wie Sie es wünschen. Das oben genannte erfordert, dass alle URLs mit http beginnen und prüfen, dass URLs, die in Anführungszeichen gesetzt sind (d. H. Die sich bereits in einem < a href = "..." > befinden), nicht konvertiert werden. Es fängt nicht ftp: //, mailto: ein. Es wird glücklich Material in Orten wie <Skript> Körper konvertieren, die Sie möglicherweise nicht passieren möchten.
Die befriedigendste Lösung ist wirklich, die Konvertierung von Hand mit Ihrem Editor zu machen, so dass Sie alle Substitutionen ansehen und genehmigen können. A good editor können Sie regexp Substitution mit Gruppenreferenzen tun (aka zurück Referenzen), so sollte es keine große Sache sein.
JavaScript ist die einzige Umgebung zur Verfügung, oder Sie haben einen Server-Backend wie pHP? – DGM
Ich habe eine Bibliothek erstellt, die Sie vielleicht in Erwägung ziehen: ali-saleem.github.io/anchorme.js ist sehr klein, sehr effizient, sehr sensitiv, bietet die geringste Anzahl an Fehlalarmen, unterstützt alle TLDs, unterstützt IPs, FTPs, HTTP oder sogar ohne http, überspringt HTML, ohne Regex und es ist 3 mal schneller als Linkify und Autolinker. –