У меня есть TextView, что я в настоящее время сопрягать для связи с:Игнорировать один URL в linkify
Linkify.addLinks(holder.tvMessage, Linkify.ALL);
Однако, теперь я хочу, чтобы соответствовать все (номера телефонов, сообщения электронной почты, URL), за исключением одного particulat URL, http://dontmatch.com.
Я попробовал последующие вызовы, такие как:
Linkify.addLinks(holder.tvMessage, Linkify.EMAIL_ADDRESSES);
Linkify.addLinks(holder.tvMessage, Linkify.PHONE_NUMBERS);
Linkify.addLinks(holder.tvMessage, Linkify.MAP_ADDRESSES);
Linkify.addLinks(holder.tvMessage, pattern, "http://");
Но, кажется, что каждый вызов перекрывает звенья предыдущего оставив только ссылки последнего вызова. Я также не уверен, как писать регулярное выражение, чтобы соответствовать всем, кроме сайта, который я хочу игнорировать. Нужен ли мне MatchFilter?
Update:
Я могу отфильтровать URL Я не хочу с:
Linkify.addLinks(holder.tvMessage, Patterns.WEB_URL, null, new MatchFilter() {
@Override
public boolean acceptMatch(CharSequence seq, int start, int end) {
String url = seq.subSequence(start, end).toString();
//Apply the default matcher too. This will remove any emails that matched.
return !url.contains("dontmatch") && Linkify.sUrlMatchFilter.acceptMatch(seq, start, end);
}
}, null);
Но как указать, что я хочу, сообщения электронной почты, номера телефонов и т.д.?