⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 decodeubb.java

📁 用Hibernate开发的JiveJdon
💻 JAVA
字号:
package com.jdon.jivejdon.manager.filter;

public class DecodeUBB {
	private regexFilter imgFilter;
	private regexFilter urlFilter;
	private regexFilter url2Filter;
	private regexFilter colorFilter;
	private regexFilter fontFilter;
	private regexFilter sizeFilter;
	private regexFilter alignFilter;
	private regexFilter quoteFilter;

	private String ubbCode;
	
	
	public DecodeUBB() {
		String regex;
		String rpStr;
		
		//image
		regex = "\\[img\\](.[^\\[]*)\\[\\/img\\]";
		rpStr = "<IMG SRC=\"$1\" />";
		imgFilter = new regexFilter(regex,rpStr);
		
		//url
		regex = "\\[URL\\](.[^\\[]*)\\[\\/URL\\]";
	    rpStr = "<A HREF=\"$1\" TARGET=_blank>$1</A>";
	    urlFilter = new regexFilter(regex,rpStr);
	    
	    regex =  "\\[URL=(.[^\\[]*)\\]";
	    rpStr = "<A HREF=\"$1\" TARGET=_blank>";
	    url2Filter = new regexFilter(regex,rpStr);
		
		
		//font-color
		regex = "\\[color=(.[^\\[]*)\\]";
		rpStr = "<font color=\"$1\">";
		colorFilter = new regexFilter(regex,rpStr);
		
		//font-face
		regex = "\\[font=(.[^\\[]*)\\]";
		rpStr = "<font face=\"$1\">";
		fontFilter = new regexFilter(regex,rpStr);
		
		//font-size
		regex = "\\[size=([1-7])\\]";
		rpStr = "<font size=\"$1\">";
		sizeFilter = new regexFilter(regex,rpStr);
		
		//font-align
		regex = "\\[align=(center|left|right)\\]";
		rpStr = "<div align=\"$1\">";
		alignFilter = new regexFilter(regex,rpStr);
		
		//quote
		regex =  "\\[quote=(.[^\\[]*)\\]";
		rpStr = "<div class=quote_title>引用\"$1\"的言论</div><div class=quote_div>";
		quoteFilter = new regexFilter(regex,rpStr);


	}
	
	public String decode(String source)
	{
		ubbCode = source;
		
		source = imgFilter.doFilter(source);
		source = urlFilter.doFilter(source);
		source = url2Filter.doFilter(source);
		source = colorFilter.doFilter(source);
		source = fontFilter.doFilter(source);
		source = sizeFilter.doFilter(source);
		source = alignFilter.doFilter(source);
		source = quoteFilter.doFilter(source);
		
		
		
		String[] searcharray= new String[]{"[/url]","[/email]","[/color]", "[/size]", "[/font]", "[/align]", "[b]", "[/b]","[i]", "[/i]", "[u]", "[/u]","[code]","[/code]","[/quote]"};
		String[] replacearray= new String[]{"</a>","</a>","</font>", "</font>", "</font>", "</div>", "<b>", "</b>", "<i>","</i>", "<u>", "</u>", "<pre>","</pre>","</div>"};
		for(int i=0;i<searcharray.length;i++)
		{
			source = source.replace(searcharray[i], replacearray[i]);
		}
		return source;
	}


	public String getUbbCode() {
		return ubbCode;
	}

	public void setUbbCode(String ubbCode) {
		this.ubbCode = ubbCode;
	}

	
}

⌨️ 快捷键说明

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