📄 encoder.java
字号:
/*
* Created on 2007-3-22
* Last modified on 2007-9-23
* Powered by YeQiangWei.com
*/
package com.yeqiangwei.club.view.util;
import com.yeqiangwei.util.StringHelper;
import com.yeqiangwei.util.Validator;
public class EnCoder {
public static void main(String args[]){
String content = "ddddddddd[quote=板砖 楼主说]前几天和一[/color]上很多人哎!” ........ [color=green] 本内容跟帖[color=red]复才[/b] [url=http://n[/quote]";
content = StringHelper.ubbPattern(content,"\\[quote=(.*?)\\](.*?)\\[/quote\\]","","");
System.out.println(content);
}
public static String codeColor(String str){
if(Validator.isEmpty(str)) return "";
str = ubbPattern(str, ""(.*?)"","<font style=color:#2A00FF;>"$1"</font>");
str = ubbPattern(str, "\\/\\*(.*?)\\*/","<font style=color:#3F7F5F;>/*$1*/</font>");
str = ubbPattern(str, "\\/\\/(.*?)\\<br/>","<font style=color:#3F7F5F;>//$1</font><br/>");
str = ubbPattern(str,"private ","<font style=\"color:#7F0055; font-weight: bold;\">private </font>");
str = ubbPattern(str,"protected ","<font style=\"color:#7F0055; font-weight: bold;\">protected </font>");
str = ubbPattern(str,"public ","<font style=\"color:#7F0055; font-weight: bold;\">public </font>");
str = ubbPattern(str,"static ","<font style=\"color:#7F0055; font-weight: bold;\">static </font>");
str = ubbPattern(str,"return ","<font style=\"color:#7F0055; font-weight: bold;\">return </font>");
str = ubbPattern(str,"try","<font style=\"color:#7F0055; font-weight: bold;\">try</font>");
str = ubbPattern(str,"catch","<font style=\"color:#7F0055; font-weight: bold;\">catch</font>");
str = ubbPattern(str,"finally","<font style=\"color:#7F0055; font-weight: bold;\">finally</font>");
str = ubbPattern(str,"package","<font style=\"color:#7F0055; font-weight: bold;\">package</font>");
str = ubbPattern(str,"null","<font style=\"color:#7F0055; font-weight: bold;\">null</font>");
str = ubbPattern(str,"short ","<font style=\"color:#7F0055; font-weight: bold;\">short </font>");
str = ubbPattern(str,"int ","<font style=\"color:#7F0055; font-weight: bold;\">int </font>");
str = ubbPattern(str,"double ","<font style=\"color:#7F0055; font-weight: bold;\">double </font>");
str = ubbPattern(str,"byte ","<font style=\"color:#7F0055; font-weight: bold;\">byte </font>");
str = ubbPattern(str,"long ","<font style=\"color:#7F0055; font-weight: bold;\">long </font>");
str = ubbPattern(str,"final ","<font style=\"color:#7F0055; font-weight: bold;\">final </font>");
str = ubbPattern(str,"new ","<font style=\"color:#7F0055; font-weight: bold;\">new </font>");
str = ubbPattern(str,"false","<font style=\"color:#7F0055; font-weight: bold;\">false</font>");
str = ubbPattern(str,"true","<font style=\"color:#7F0055; font-weight: bold;\">true</font>");
str = ubbPattern(str,"while\\(","<font style=\"color:#7F0055; font-weight: bold;\">while</font>(");
str = ubbPattern(str,"for\\(","<font style=\"color:#7F0055; font-weight: bold;\">for</font>(");
str = ubbPattern(str,"switch","<font style=\"color:#7F0055; font-weight: bold;\">switch</font>");
str = ubbPattern(str,"if\\(","<font style=\"color:#7F0055; font-weight: bold;\">if</font>(");
str = ubbPattern(str,"else","<font style=\"color:#7F0055; font-weight: bold;\">else</font>");
str = ubbPattern(str,"this\\.","<font style=\"color:#7F0055; font-weight: bold;\">this</font>.");
str = ubbPattern(str,"function\\(","<font style=\"color:#7F0055; font-weight: bold;\">function</font>(");
str = ubbPattern(str,"document.","<font style=\"color:#7F0055; font-weight: bold;\">document</font>.");
return str;
}
/*
public static String ubbColor(String str){
return ubbPattern(str, "\\[color=(.*?)\\](.*?)\\[/color\\]","<font color=\"$1\">$2</font>");
}
*/
public static String simpleTag(String str){
if(Validator.isEmpty(str)) return "";
/*
str = ubbPattern(str, "\\[url\\](.*?)\\[/url\\]","<a href=\"$1\" target=\"_blank\">$1</a>");
str = ubbPattern(str, "\\[url=(.*?)\\](.*?)\\[/url\\]","<a href=\"$1\" target=\"_blank\">$2</a>");
str = ubbPattern(str, "\\[img\\](.*?)\\[/img\\]","<a href=\"$1\" target=\"_blank\"><img onload=\"javascript:if(this.width > screen.width-350){this.width = screen.width-350};\" onerror=\"javascript:this.src='/club/images/imgErr.gif'\" src=\"$1\" /></a>");
str = ubbPattern(str,"\\[center\\](.*?)\\[/center\\]","<center>$1</center>");
str = ubbPattern(str,"\\[b\\](.*?)\\[/b\\]","<strong>$1</strong>");
str = ubbPattern(str,"\\[i\\](.*?)\\[/i\\]","<em>$1</em>");
str = ubbPattern(str,"\\[u\\](.*?)\\[/u\\]","<font style=\"text-decoration:underline;\">$1</font>");
str = ubbPattern(str,"\\[font=(.*?)\\](.*?)\\[/font\\]","$2");
str = ubbPattern(str, "\\[ClubFace_(\\d*)\\]","<img src=\"images/YeQiangWeiFace/$1.gif\">");
str = ubbPattern(str, "\\[size=1](.*?)\\[/size\\]","<font style=\"font-size:12px\">$1</font>");
str = ubbPattern(str, "\\[size=2](.*?)\\[/size\\]","<font style=\"font-size:14px\">$1</font>");
str = ubbPattern(str, "\\[size=3](.*?)\\[/size\\]","<font style=\"font-size:16px\">$1</font>");
str = ubbPattern(str, "\\[size=4](.*?)\\[/size\\]","<font style=\"font-size:18px\">$1</font>");
str = ubbPattern(str, "\\[size=5](.*?)\\[/size\\]","<font style=\"font-size:20px\">$1</font>");
str = ubbPattern(str, "\\[size=6](.*?)\\[/size\\]","<font style=\"font-size:30px\">$1</font>");
str = ubbPattern(str, "\\[size=7](.*?)\\[/size\\]","<font style=\"font-size:40px\">$1</font>");
*/
return UBBDecoder.decode(str, new SimpleTagHandler(), UBBDecoder.MODE_IGNORE);
}
public static String ubbMedia(String str){
StringBuffer sb = new StringBuffer("");
/* flash player start */
sb.append("<script language=\"javascript\">");
sb.append("EncodeString_flash(500,400,'$1');");
sb.append("</script>");
str = ubbPattern(str, "\\[flash\\](.*?)\\[/flash\\]",sb.toString());
str = ubbPattern(str, "\\[swf\\](.*?)\\[/swf\\]",sb.toString());
sb.delete(0,sb.length());
sb.append("<script language=\"javascript\">");
sb.append("EncodeString_flash($1,$2,'$3');");
sb.append("</script>");
str = ubbPattern(str, "\\[flash=*([\\d]*),*([\\d]*)\\](.*?)\\[/flash\\]",sb.toString());
str = ubbPattern(str, "\\[swf=*([\\d]*),*([\\d]*)\\](.*?)\\[/swf\\]",sb.toString());
sb.delete(0,sb.length());
/* flash player end */
/** real palyer start */
sb.append("<script language=\"javascript\">YeQiangWeiPlayer_real(450,350,-1,'$1');</script>");
str = ubbPattern(str, "\\[real\\](.*?)\\[/real\\]",sb.toString());
sb.delete(0,sb.length());
sb.append("<script language=\"javascript\">YeQiangWeiPlayer_real($1,$2,-1,'$3');</script>");
str = ubbPattern(str, "\\[real=*([\\d]*),*([\\d]*)\\](.*?)\\[/real\\]",sb.toString());
sb.delete(0,sb.length());
sb.append("<script language=\"javascript\">YeQiangWeiPlayer_real($1,$2,$3,'$4');</script>");
str = ubbPattern(str, "\\[real=*([\\d]*),*([\\d]*),(-1|0)\\](.*?)\\[/real\\]",sb.toString());
sb.delete(0,sb.length());
/** real palyer end */
/** windows palyer start */
sb.append("<script language=\"javascript\">YeQiangWeiPlayer_windows(450,350,1,'$1');</script>");
str = ubbPattern(str, "\\[video\\](.*?)\\[/video\\]",sb.toString());
sb.delete(0,sb.length());
sb.append("<script language=\"javascript\">YeQiangWeiPlayer_windows($1,$2,1,'$3');</script>");
str = ubbPattern(str, "\\[video=*([\\d]*),*([\\d]*)\\](.*?)\\[/video\\]",sb.toString());
sb.delete(0,sb.length());
sb.append("<script language=\"javascript\">YeQiangWeiPlayer_windows($1,$2,$3,'$4');</script>");
str = ubbPattern(str, "\\[video=*([\\d]*),*([\\d]*),*([\\d]*)\\](.*?)\\[/video\\]",sb.toString());
sb.delete(0,sb.length());
/** windows palyer end */
return str;
}
public static String advancedTag(String str){
if(Validator.isEmpty(str)) return "";
/**
* 为了不合正则表达式关键字符冲突替换$为其他字符
* 然后再最下面再替换回去
*/
/*
str = str.replace("$","(@#%)");
str = ubbPattern(str,"\\","\\\\");
List<String> list = StringHelper.matcherList(str,"\\[(.*?)\\](.*?)\\[/(.*?)\\]");
for(int i=0;i<list.size();i++){
String s = list.get(i);
str = str.replace(s,s.replace("\\","\\\\"));
}
*/
//str = ubbPattern(str,"\\[move\\](.*?)\\[/move\\]","<marquee scrollamount=\"1\" delay=\"3\" onmouseout='start()' onmouseover='stop()'>$1</marquee>");
//str = ubbPattern(str,"\\[fly\\](.*?)\\[/fly\\]","<marquee scrollamount=\"1\" delay=\"3\" onmouseout='start()' onmouseover='stop()'>$1</marquee>");
//str = ubbPattern(str,"\\[code\\](.*?)\\[/code\\]","<div class=\"quote\"><div class=\"tr\">代码</div>$1</div>");
str = UBBDecoder.decode(str, new AdvancedTagHandler(),UBBDecoder.MODE_IGNORE);
//str = ubbPattern(str.replace("(@#%)","$"),"\\\\","\\");
return str;
}
public static String ubbPattern(String str, String cp, String mc){
return StringHelper.ubbPattern(str,cp,mc,"");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -