Auf der heutigen Code Golf Stack Exchange-Website habe ich diese Antwort in Clojure auf die Frage "Alle Links auf einer Webseite abrufen" gefunden.
(->> (slurp "http://www.stroustrup.com")
(re-seq #"(?:http://)?www(?:[./#\+-]\w*)+"))
Ohne das schicke Makro ist es nur so:
(re-seq #"(?:http://)?www(?:[./#\+-]\w*)+" (slurp "http://www.stroustrup.com"))
Dies gibt die Liste zurück:
("http://www.morganstanley.com/" "http://www.cs.columbia.edu/" "http://www.cse.tamu.edu" ...)
Kann ich in Emacs Lisp etwas Ähnliches tun?
Vielleicht (re-seq regexp (buffer-string))
kehrt so eine Funktion zurück '(firstmatch secondmatch thirdmatch ...)
?
occur
. Ich muss die Quelle durchsehen.
s.el
, aber vielleicht gibt es da draußen noch mehr. Hier: github.com/magnars/s.el#s-match-strings-all-regex-string Wie wäre es damit?
M-x occur
tut, aber ich würde nach tieferen Funktionen suchen, um das zu tun.