java正則表現はurlリンクにラベルを付けます。

1073 ワード

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class HtmlTag {
    public static void main(String[] args) {
        String str = "    url  http://www-test.company.com/view/1_2.html?a=%B8&f=%E4+%D3#td        ";
        String regex = "(http:|https:)//[^[A-Za-z0-9\\._\\?%&+\\-=/#]]*";
        Pattern pattern = Pattern.compile(regex);
        Matcher matcher = pattern.matcher(str);
        StringBuffer result = new StringBuffer();
        while (matcher.find()) {
            StringBuffer replace = new StringBuffer();
            replace.append("<a href=\"").append(matcher.group());
            replace.append("\" target=\"_blank\">      </a>");
            matcher.appendReplacement(result, replace.toString());
        }
        matcher.appendTail(result);
        System.out.println(str);
        System.out.println(result);
    }
}