【发布时间】:2013-10-24 11:04:04
【问题描述】:
我正在使用缓冲阅读器浏览 HTML 文件,并且必须将任何 img 文件的完整 URL 替换为新路径。
例如,我正在处理的一个文件有 3 个新路径要找到并且我已将它们声明为最终变量:
public static final String x_TAG="https://newsite.com/media/x.jpg";
public static final String y_TAG="https://newsite.com/media/y.jpg";
public static final String z_TAG="https://newsite.com/media/z.jpg";
现在我可以通过以下方式阅读文件中的文件和模式匹配:
Pattern imgPattern = Pattern.compile("(<\\s*img\\s*alt\\s*=\\s*\").*?(\"\\s*>)");
Matcher imgMatcher = imgPattern.matcher(replaceAllTags);
while(imgMatcher.find()) {
System.err.println("match at "+imgMatcher.group());
}
打印回来:
match at <img alt="/oldSite.com/Images?action=AttachFile&do=get&target=Images/x.jpg" src="cc_files/Images_003.jpg" title="/oldSite.com/Images?action=AttachFile&do=get&target=Images/x.jpg" width="600">
match at <img alt="/oldSite.com/Images?action=AttachFile&do=get&target=Images/y.jpg" src="cc_files/Images_004.jpg" title="/oldSite.com/Images?action=AttachFile&do=get&target=Images/y.jpg" width="600">
match at <img alt="/oldSite.com/Images?action=AttachFile&do=get&target=Images/z.jpg" src="cc_files/Images.jpg" title="/oldSite.com/Images?action=AttachFile&do=get&target=Images/z.jpg" width="600">**
那么,为每张图片查找和附加新 URL 的最佳方法是什么?
【问题讨论】:
-
追加后的最终结果应该是什么样子?
-
newSite.com/media/x.jpg" src="newSite.com/media/x.jpg" title="newSite.com/media/x.jpg" width="600" />
标签: java regex html-parsing web-scraping