📄 regfilterbuilder.java
字号:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi
// Source File Name: RegFilterBuilder.java
package com.laoer.bbscs.sys;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
// Referenced classes of package com.laoer.bbscs.sys:
// FilterBuilder, Filter, RegexFilter
public class RegFilterBuilder
implements FilterBuilder
{
private String regex;
private String rpStr;
private String source;
private String result;
public RegFilterBuilder(String regex, String rpStr, String source)
{
this.regex = null;
this.rpStr = null;
this.source = null;
result = null;
this.regex = regex;
this.rpStr = rpStr;
this.source = source;
}
public void buildFilter()
{
if(regex == null)
return;
Pattern p = Pattern.compile(regex, 2);
Matcher matcher = p.matcher(source);
StringBuffer sb = new StringBuffer();
String tempString = rpStr;
int rpL = rpStr.split("\\$[0-9]+").length;
for(; matcher.find(); matcher.appendReplacement(sb, tempString))
{
for(int i = 0; i < rpL && i < matcher.groupCount(); i++)
tempString = tempString.replaceAll("\\$" + i, matcher.group(i));
}
matcher.appendTail(sb);
result = sb.toString();
}
public Filter getFilter()
{
return new RegexFilter() {
public String getFilteredStr()
{
return result;
}
};
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -