📄 codefilter.java
字号:
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;
import com.bcxy.bbs.codeviewer.CodeViewer;
public class CodeFilter extends filter {
public CodeFilter(String s) {
super(s);
}
public CodeFilter() {
}
public String convertString() {
return codeConverter();
}
public String codeConverter() {
Pattern p;
Matcher m;
String codeBgcolor = "#e6e6e6";
StringBuffer sb;
boolean result;
String reg = "(\\[code\\])(.[^\\[]*)(\\[\\/code\\])";
p = Pattern.compile(reg, Pattern.CASE_INSENSITIVE);
m = p.matcher(s);
sb = new StringBuffer();
result = m.find();
while (result) {
m.appendReplacement(sb,
"<table width='90%' border='1' cellspacing='0' cellpadding='2' bgcolor='"
+ codeBgcolor + "' borderColorLight='black' ><td><b>以下内容为程序代码:</b><br>"
+ (new CodeViewer()).syntaxHighlight(m.group(2)) + "</td></table>");
result = m.find();
}
m.appendTail(sb);
return sb.toString();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -