autofilter.java

来自「BBS论坛设计JSP+MYSQL」· Java 代码 · 共 59 行

JAVA
59
字号
package com.bcxy.bbs.filter;

/**
 * Title:
 * Description:
 * Copyright:
 * Company: www.liyunet.com
 * 
 * @author lishujiang	
 * @version 1.0
 */

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

public class AutoFilter extends filter {

	public AutoFilter(String s) {
		super(s);
	}

	public AutoFilter() {

	}

	public String convertString() {
		return autoURLConverter();
	}

	public String autoURLConverter() {
		Pattern p;
		Matcher m;
		StringBuffer sb;
		boolean result;
		String reg = "^(http://[A-Za-z0-9\\./=\\?%\\-&_~`@':+!]+)|"
				+ "((http://[A-Za-z0-9\\./=\\?%\\-&_~`@':+!]+)$)|"
				+ "([^>=\"\"](http://[A-Za-z0-9\\./=\\?%\\-&_~`@':+!]+))"
				+ "|^(ftp://[A-Za-z0-9\\./=\\?%\\-&_~`@':+!]+)"
				+ "|(ftp://[A-Za-z0-9\\./=\\?%\\-&_~`@':+!]+)$"
				+ "|[^>=\"\"](ftp://[A-Za-z0-9\\.\\/=\\?%\\-&_~`@':+!]+)"
				+ "|^(rtsp://[A-Za-z0-9\\./=\\?%\\-&_~`@':+!]+)"
				+ "|(rtsp://[A-Za-z0-9\\./=\\?%\\-&_~`@':+!]+)$"
				+ "|[^>=\"\"](rtsp://[A-Za-z0-9\\.\\/=\\?%\\-&_~`@':+!]+)"
				+ "|^(mms://[A-Za-z0-9\\./=\\?%\\-&_~`@':+!]+)"
				+ "|(mms://[A-Za-z0-9\\./=\\?%\\-&_~`@':+!]+)$"
				+ "|[^>=\"\"](mms://[A-Za-z0-9\\.\\/=\\?%\\-&_~`@':+!]+)";
		p = Pattern.compile(reg, Pattern.CASE_INSENSITIVE);
		m = p.matcher(s);
		sb = new StringBuffer();
		result = m.find();
		while (result && m.group(0) != null) {
			m.appendReplacement(sb, "<a target=_blank href=" + m.group(0) + ">"
					+ m.group(0) + "</a>");
			result = m.find();
		}
		m.appendTail(sb);
		return sb.toString();
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?