Jfinal 实现从数据库中提取图片
2016-03-20 23:19
357 查看
package test; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Mytestt { private static final String REGEX = "\\bcat\\b"; private static final String INPUT = "cat cat cat cattie cat"; private static final String regex2 ="[\"|\'].{0,6}[^\":<>]*\\.(jpg|bmp|gif|ico|pcx|jpeg|tif|png|raw|tga|js|htm)[\'|\"]?"; private static final String str1 = "src=\"/1.png\" "; private static final String str2 = "<img src=\"http://www.tuozou.com/Uploads/editor/2016-01-04/5689b6bb41ce1.png\" 123132134545>" +"\'http://ad.topthink.com/Uploads/Picture/2016-02-04/56b2b9351f787.jpg\'" +"src=\"/5689b6bb41ce1.png\" 123132134545>"; public static void main(String args[]) { Pattern p = Pattern.compile(regex2); Matcher m = p.matcher(str2); // 获取 matcher 对象 int count = 0; while (m.find()) { // count++; System.out.println("Match number " + count+": "+m.group()); System.out.println("start(): " + m.start()); System.out.println("end(): " + m.end()); } } }
需求:jfinal博客项目中 只有文字链接 没有相关的图文显示 目前需要将文章中的图片提取出来并且显示到jfinal项目中
思路:1 实现从数据库中获取到content字段的内容
2 获取数据库中 content字段的 src匹配 这里必须用正则校验 获取到图片 然后将第一张 地址取出
3 在View 页面中显示的时候将src部分的链接 替换 显示就OK
代码:这个test 已经实现从数据中提取出图片地址 备忘下
效果如下 :
"http://www.tuozou.com/Uploads/editor/2016-01-04/5689b6bb41ce1.png"
"/1.png"
package test; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; import com.demo.common.model.Blog; import freemarker.core._RegexBuiltins.replace_reBI; public class getPic { String str = "4564646"; public static void getpic(String str) { String regex = "[1-9]\\d{4,9}"; boolean flag = str.matches(regex); if (flag) { System.out.println(str + "OK"); } else { System.out.println(str + "no"); } } /** * <img width="728" height="90" src="http://ad.topthink.com/Uploads/Picture/2015-12-24/567b6ee6edea0.jpg" alt="阿里云"> * String regex = "\<img+\>"; \\w+\\.(gif|jpg|jpeg|bmp|png) * @param str */ //("/(src)=([\"|']?)([^ \"'>]+\.(gif|jpg|jpeg|bmp|png))\\2/i" public static String getpiclink(String regex,String str){ String regex2 = "^src\\.$"; Pattern compile = Pattern.compile(regex); Matcher matcher = compile.matcher(str); // System.out.println(matcher.matches()); while (matcher.find()) { System.out.println(matcher.group()); return matcher.group(); } return "123"; } public static String getcontent(String regex,int id){ List<Blog> list = Blog.me.find("SELECT content FROM `blog` where id = ? LIMIT 0, 100;",id); String str = list.get(0).toString(); String getpiclink = getpiclink(regex,str); return getpiclink; } public static void main(String[] args) { // String regex = "((src)=([\"|']?)(\\w+).+\\w+\\.(gif|jpg|jpeg|bmp|png)([\"|']?)$)|(^(src)=([\"|']?).+\\w+\\.(gif|jpg|jpeg|bmp|png)([\"|']?)$)"; String regex = "(src)=[^\":<>]*.+\\.(gif|jpg|jpeg|bmp|png)"; // String regex2 ="(src)=([\"|']?)(\\w+).+\\w+\\.(gif|jpg|jpeg|bmp|png)$([\"|']?)"; /** * (src)=([\"|']?) (\\w+).+\\w+\\.(gif|jpg|jpeg|bmp|png)\\2| * (src)=([\"|']?) .+\\w+\\.(gif|jpg|jpeg|bmp|png) */ // getpic("ming tian jiu yao fang jia le"); /** * <img src="/ueditor/jsp/upload/image/20160316/1458122401687030365.jpg" style="box-sizing: inherit; border: 1px solid rgba(0, 0, 0, 0.0980392); max-width: 100%; cursor: pointer; padding: 10px; display: inline-block !important; background-color: rgb(255, 255, 255);"> */ // String regex1 = "http://[^\":<>]*\\.(jpg|bmp|gif|ico|pcx|jpeg|tif|png|raw|tga|js|htm)"; String regex2 ="\".{0,6}[^\":<>]*\\.(jpg|bmp|gif|ico|pcx|jpeg|tif|png|raw|tga|js|htm)\""; String str1 = "src=\"/1.png\" "; getpiclink(regex2,"<img src=\"http://www.tuozou.com/Uploads/editor/2016-01-04/5689b6bb41ce1.png\" 123132134545>" +"http://ad.topthink.com/Uploads/Picture/2016-02-04/56b2b9351f787.jpg" +"src=\"/5689b6bb41ce1.png\" 123132134545>"); getpiclink(regex2, str1); } }
相关文章推荐
- 数据库 杂记
- 通过JDBC访问数据库
- (二)操作mongodb数据库
- oracle、sql server、mysql分页
- MySql中的存储过程
- 【数据库】:关于语言连接数据库的一个认识
- Redis学习(二)-散列、有序集合
- oracle 12cr1 sqlldr errors参数差异
- Oracle Total Recall Tips
- sqlite3 api&cli
- MongoDB基本管理命令
- Redis安装包安装流程及学习总结
- Oracle SQL 性能优化粗略总结
- 数据库sqlite3的使用-基本语法
- mysql之select(一)
- 数据库sqlite3的使用-Navicat的安装
- mysql 5.6.29 绿色版安装
- mysql 5.6.29 绿色版安装
- Mysql常用参数整理
- MySQL基本操作