安卓端/course_mgmt_app/src/net/common/android/common/BBCodeHelper.java
(开头部分) 7KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
package net.common.android.common;
import java.text.MessageFormat;
import java.util.LinkedHashSet;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class BBCodeHelper {
private static Pattern pattern_ncsmiley = Pattern.compile("\\[ncsmiley\\]([^\\[\\]]*)\\[/ncsmiley\\]", Pattern.MULTILINE);
//private static Pattern pattern_image2 = Pattern.compile("\\[img=\\d{4},\\d{3}\\]([^\\[\\]]*)\\[/img\\]", Pattern.MULTILINE);
//private static Pattern pattern_image = Pattern.compile("\\[img\\]([^\\[\\]]*)\\[/img\\]", Pattern.MULTILINE);
private static Pattern pattern_pic = Pattern.compile("\\[img\\]([^\\[\\]]*)\\[/img\\]", Pattern.MULTILINE);
private static Pattern pattern_link = Pattern.compile("\\[url=([^\\[\\]]*)\\]([^\\[\\]]*)\\[/url\\]", Pattern.MULTILINE);
private static Pattern bbcode = Pattern.compile("\\[[^\\[\\]]*\\]");
private static Pattern pattern_attach = Pattern.compile("\\[attach\\]([^\\[\\]]*)\\[/attach\\]", Pattern.MULTILINE);
private static Pattern pattern_href= Pattern.compile("^http://([\\w-]+\\.)+[\\w-]+(/[\\w- ./?%&=]*)?$");
private static String img_html = "<img src=''{0}''/>";
private static String link_html = "<a href=''{0}''>{1}</a>";
/**
* 提取img并去掉标签
* @param src
* @param al
* @return
*/
public static String processImage(String src, LinkedHashSet<String> al){
String result = null;
Matcher matcher = pattern_pic.matcher(src);
while(matcher.find()){
String url = matcher.group(1);
if(pattern_href.matcher(url).matches()){
al.add(url);
}
}
result = matcher.replaceAll("");
return result;
}
/**
* 把URL转成超链接
* @param src
* @return
*/
public static String processURL(String src){
for(Matcher matcher = pattern_link.matcher(src);
matcher.find(); matcher = pattern_link.matcher(src)){
String url = matcher.group(1);
String content = matcher.group(2);
String dest = MessageFormat.format(link_html, url, content);
src = matcher.replaceFirst(dest);
}
return src;
}
后面还有 199 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。