urlfilter.java

来自「用jsp+sqlserver 开发的论坛:主要功能:发帖、 浏览帖子 和回帖;主」· Java 代码 · 共 60 行

JAVA
60
字号
package net.acai.filter;import java.util.regex.*;/** * Title:        清清网络 * Description: * Copyright:    Copyright (c) 2002 * Company:      www.qingqing.com * @author:       qingqing * @version 1.0 */public class URLFilter extends filter {  public URLFilter(String s) {    super(s);  }  public URLFilter() {  }  public String convertString(){    return this.URLConverter();  }  public String URLConverter(){ 	Pattern p = Pattern.compile("(\\[(URL)((=(((http://)|(ftp://))?)([^\\[]*))?)\\])((((http://)|(ftp://))?)([^\\[]*))(\\[(\\/URL)\\])",            Pattern.CASE_INSENSITIVE);        Matcher m = p.matcher(s);        StringBuffer sb = new StringBuffer();        boolean result = m.find();        while(result) {  			 m.appendReplacement(sb,"<a href=\"");            if(!"".equals(m.group(3))){				if("".equals(m.group(5)))					if(m.group(10)==null)						sb.append("http://"+m.group(9)+"\">"+m.group(9)+"</a>");					else						sb.append("http://"+m.group(9)+"\">"+m.group(10)+"</a>");				else					if(m.group(10)==null)						sb.append(m.group(5)+m.group(9)+"\">"+m.group(5)+m.group(9)+"</a>");					else						sb.append(m.group(5)+m.group(9)+"\">"+m.group(10)+"</a>");			}			else{				if("".equals(m.group(11)))						sb.append("http://"+m.group(10)+"\">"+m.group(10)+"</a>");				else						sb.append(m.group(10)+"\">"+m.group(10)+"</a>");			}			 result = m.find();        }        m.appendTail(sb);        return sb.toString();  }}

⌨️ 快捷键说明

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