最近在寫的一個爬蟲程序奋构,有一段邏輯是從css文件中提取所有的背景圖片url,于是想到用正則表達式提取所有匹配url("xxx")這種格式揽乱,再用分組捕獲其中的url地址用于爬取隙疚。由于對正則表達式比較生疏,一開始寫的正則是?Pattern.compile(".*url\\(\"(.*)\"\\).*")忙芒,運行以后示弓,發(fā)現機器cpu飆升,每個線程的核心都基本跑滿了呵萨,用jstack查看線程運行狀態(tài)奏属,基本都是在匹配正則這個地方。于是乎搜了下關于java正則的一些知識潮峦,修改正則以后順利解決了這個問題囱皿。講的比較好的一篇文章推薦給大家:
https://www.jb51.net/article/163520.htm
里面介紹的在線正則驗證工具也很不錯: