我有一个包含链接的字符串。
ex.字符串的:
我们喜欢吃巧克力,吃一份http://t.co/9BDZvcx59d http://t.co/9BDZvcx59d.
所以如果我按原样显示这个字符串,它会是一样的。但如果我使用匹配器和模式来检测链接并为其着色,它就会将其切断。
It'll be: 粗体是绿色。
我们喜欢吃巧克力,吃一份http://t.co http://t.co.
Pattern urlPattern = Patterns.WEB_URL;
Matcher m = urlPattern.matcher(sb.toString());
sb = new StringBuffer(sb.length());
while (m.find()) {
m.appendReplacement(sb, "<font color=\"#006600\">" + m.group(1) + "</font>");
}
m.appendTail(sb);
我也尝试过使用
Pattern linkPattern = Pattern.compile("(http[A-Za-z0-9_-+)");
但无法在 [] 中插入 : 或 //。
您可以尝试使用第二种方法。
Pattern linkPattern = Pattern.compile("(http://t.co/[A-Za-z0-9_-]+)");
它将在之后编译t.co/
所以它不会出现符号或除了字母和数字之外的任何东西。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)