使用正则表达式从clojure集合中提取字符串

前端之家收集整理的这篇文章主要介绍了使用正则表达式从clojure集合中提取字符串前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
你能建议我从字符串序列中提取子串的最短和最简单的方法吗?我从使用enlive框架获取此集合,该框架从某些网页获取内容,这是我得到的结果:

("background-image:url('http://s3.mangareader.net/cover/gantz/gantz-r0.jpg')"
 "background-image:url('http://s3.mangareader.net/cover/deadman-wonderland/deadman-wonderland-r0.jpg')"
 "background-image:url('http://s3.mangareader.net/cover/12-prince/12-prince-r1.jpg')" )

我想要的是从序列中的每个字符串中提取URL来获得一些帮助.我尝试使用分区函数,但没有成功.任何人都可以为此问题提出正则表达式或任何其他方法吗?

谢谢

解决方法

re-seq到resque!

(map #(re-seq #"http.*jpg" %) d)
(("http://s3.mangareader.net/cover/gantz/gantz-r0.jpg")  
("http://s3.mangareader.net/cover/deadman-wonderland/deadman-wonderland-r0.jpg") 
("http://s3.mangareader.net/cover/12-prince/12-prince-r1.jpg"))
user>

重新找到更好:

user> (map #(re-find #"http.*jpg" %) d)
("http://s3.mangareader.net/cover/gantz/gantz-r0.jpg" 
 "http://s3.mangareader.net/cover/deadman-wonderland/deadman-wonderland-r0.jpg" 
 "http://s3.mangareader.net/cover/12-prince/12-prince-r1.jpg")

因为它不会添加额外的seq层.

猜你在找的正则表达式相关文章