首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > 移动开发 >

文本从超链接有关问题Links Using Linkify

2012-08-30 
文本从超链接问题Links Using Linkify// 没有任何连接textView.setAutoLinkMask(0)??// 电话数字? 网页Li

文本从超链接问题Links Using Linkify

// 没有任何连接

textView.setAutoLinkMask(0);

?

?

// 电话数字? 网页
Linkify.addLinks(text, Linkify.PHONE_NUMBERS | Linkify.WEB_URLS);

//正则表达式

Pattern pattern = Pattern.compile("\\d{5}([\\-]\\d{4})?");
String scheme = "http://zipinfo.com/cgi-local/zipsrch.exe?zip=";
Linkify.addLinks(text, pattern, scheme);

正则表达式 基本上很有用了,但是有时候需要更灵活写 比如我只要奇数,为了公司需要 还是英文解释吧 大家看得懂吧

// only accepts odd numbers.
MatchFilter oddFilter = new MatchFilter() {
??? public final boolean acceptMatch(CharSequence s, int start, int end) {
??????? int n = Character.digit(s.charAt(end-1), 10);
??????? return (n & 1) == 1;
??? }
};

// Match all digits in the pattern but restrict links to only odd numbers using the filter.
Pattern pattern = Pattern.compile("[0-9]+");
Linkify.addLinks(text, pattern, "http://...", oddFilter, null);

import java.util.regex.Pattern;
import android.text.util.Linkify;
import android.text.util.Linkify.TransformFilter;

// A transform filter that simply returns just the text captured by the
// first regular expression group.
TransformFilter mentionFilter = new TransformFilter() {
??? public final String transformUrl(final Matcher match, String url) {
??????? return match.group(1);
??? }
};

// Match @mentions and capture just the username portion of the text.
Pattern pattern = Pattern.compile("@([A-Za-z0-9_-]+)");
String scheme = "http://twitter.com/";
Linkify.addLinks(text, pattern, scheme, null, mentionFilter);

http://android.git.kernel.org/?p=platform/frameworks/base.git;a=blob;f=core/java/android/text/util/Linkify.java

http://android.git.kernel.org/?p=platform/frameworks/base.git;a=blob;f=core/java/android/text/util/Regex.java

?

?

热点排行