import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Example {
public static void main(String[] args) {
final String regex = "<img\\s+[\\S\\\"'= ]{0,40}src=[\\\"'](?P<src>(http(s)?:)?\\/\\/[^\\\":>]+)[\\\"']?";
final String string = "\n"
+ "<!DOCTYPE html>\n"
+ "<html lang=\"zh-cn\">\n"
+ "<head>\n"
+ " <meta charset=\"utf-8\" />\n"
+ " <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n"
+ " <meta name=\"referrer\" content=\"always\" />\n"
+ " <title>博客园 - 代码改变世界</title>\n"
+ " <meta name=\"keywords\" content=\"开发者,博客园,开发者,程序猿,程序媛,极客,编程,代码,开源,IT网站,Developer,Programmer,Coder,Geek,技术社区\" />\n"
+ " <meta name=\"description\" content=\"博客园是一个面向开发者的知识分享社区。自创建以来,博客园一直致力并专注于为开发者打造一个纯净的技术交流社区,推动并帮助开发者通过互联网分享知识,从而让更多开发者从中受益。博客园的使命是帮助开发者用代码改变世界。\" />\n"
+ " <link rel=\"shortcut icon\" href=\"//common.cnblogs.com/favicon.ico\" type=\"image/x-icon\" />\n"
+ " <link rel=\"Stylesheet\" type=\"text/css\" href=\"/bundles/aggsite.css?v=IlEZk4Ic2eCzcO6r0s4bGm62FAo8VZI-US_0EqUe2Bk1\" />\n"
+ " <link id=\"RSSLink\" title=\"RSS\" type=\"application/rss+xml\" rel=\"alternate\" href=\"http://feed.cnblogs.com/blog/sitehome/rss\" />\n"
+ " <script src=\"//common.cnblogs.com/scripts/jquery-2.2.0.min.js\" type=\"text/javascript\"></script>\n"
+ " <script src=\"/bundles/aggsite.js?v=wbLJNoxRMOKXYku3zcNQAABkHSQLwHZ_hyKZv8KPN1Y1\" type=\"text/javascript\"></script>\n"
+ " <script async='async' src='https://www.googletagservices.com/tag/js/gpt.js'></script>\n"
+ " <script>\n"
+ " var googletag = googletag || {};\n"
+ " googletag.cmd = googletag.cmd || [];\n"
+ " </script>\n\n"
+ " <script>\n"
+ " googletag.cmd.push(function () {\n"
+ " googletag.defineSlot('/1090369/A1', [468, 60], 'div-gpt-ad-1547816814884-0').addService(googletag.pubads());\n"
+ " googletag.defineSlot('/1090369/B1', [300, 250], 'div-gpt-ad-1546331539224-0').addService(googletag.pubads());\n"
+ " googletag.defineSlot('/1090369/B2', [300, 250], 'div-gpt-ad-1539007469525-0').addService(googletag.pubads());\n"
+ " googletag.defineSlot('/1090369/B3', [300, 250], 'div-gpt-ad-1546331252242-0').addService(googletag.pubads());\n"
+ " googletag.defineSlot('/1090369/B4', [300, 250], 'div-gpt-ad-1546331385104-0').addService(googletag.pubads());\n"
+ " googletag.pubads().enableSingleRequest();\n"
+ " googletag.enableServices();\n"
+ " });\n"
+ " </script>\n"
+ "</head>\n"
+ "<body>\n"
+ " <div id=\"wrapper\">\n"
+ " <div id=\"hd_info\">\n"
+ " <div id=\"cnts\">\n"
+ " <div id=\"site_nav_top\">代码改变世界</div>\n"
+ " <div id=\"login_area\"><span id=\"span_userinfo\"></span></div>\n"
+ " <div class=\"clear\"></div>\n"
+ " </div>\n"
+ " </div>\n"
+ " <div id=\"header\">\n"
+ " <p class=\"h_r_3\"></p><p class=\"h_r_2\"></p><p class=\"h_r_1\"></p>\n"
+ " <div id=\"header_block\">\n"
+ " <div id=\"logo\">\n"
+ " <h1>\n"
+ " <a href=\"https://www.cnblogs.com/\" title=\"开发者的网上家园\"><img src=\"/images/logo_small.gif\" alt=\"博客园Logo\" width=\"142\" height=\"55\" /></a>\n"
+ " </h1>\n"
+ " </div>\n\n"
+ " <div class=\"clear\"></div>\n"
+ " </div>\n"
+ " <p class=\"h_r_1\"></p><p class=\"h_r_2\"></p><p class=\"h_r_3\"></p>\n"
+ " </div>\n"
+ " <div id=\"nav_menu\"><a href=\"https://home.cnblogs.com/\">园子</a><a href=\"https://news.cnblogs.com\">新闻</a><a href=\"https://q.cnblogs.com/\">博问</a><a href=\"https://ing.cnblogs.com/\">闪存</a><a href=\"https://group.cnblogs.com/\">小组</a><a href=\"https://wz.cnblogs.com/\">收藏</a><a href=\"https://job.cnblogs.com/\">招聘</a><a href=\"https://edu.cnblogs.com/\">班级</a><a href=\"http://zzk.cnblogs.com/\">找找看</a></div>\n"
+ " <div id=\"main\">\n"
+ " <div class=\"post_nav_block_wrapper\">\n"
+ " <ul class=\"post_nav_block\">\n"
+ " <li><a href=\"/\" class=\"current_nav\" >首页</a></li>\n"
+ " <li><a href=\"/pick/\" title=\"编辑精选博文\">精华</a></li>\n"
+ " <li><a href=\"/candidate/\" title=\"候选区的博文\">候选</a></li>\n"
+ " <li><a href=\"/news/\" title=\"新闻频道最新新闻\">新闻</a></li>\n"
+ " <li><a href=\"/following\" title=\"我关注博客的最新博文\">关注</a></li>\n"
+ " <li><a href=\"/aggsite/mycommented\" title=\"我评论过的博文\">我评</a></li>\n"
+ " <li><a href=\"/aggsite/mydigged\" title=\"我推荐过的博文\">我赞</a></li>\n"
+ " </ul>\n"
+ " <div class=\"clear\"></div>\n"
+ " </div>\n"
+ " <div class=\"rss_link\" id=\"rss_block\">\n"
+ "<span id=\"posts_refresh_tips\"></span><a id=\"posts_refresh\" href=\"#\" class=\"refresh\" title=\"刷新博文列表\" onclick=\"aggSite.loadCategoryPostList();return false\">刷新</a> <a href=\"http://feed.cnblogs.com/blog/sitehome/rss\"><img src=\"//common.cnblogs.com/images/icon_rss.gif\" alt=\"点击订阅\" style=\"position:relative;top:2px;\" title=\"订阅博客园文章\" /></a> </div>\n"
+ " <div id=\"headline_block\" class=\"headline\"><ul><li class=\"editor_pick\"><a href=\"https://www.cnblogs.com/Zachary-Fan/p/bugwhy.html\" id=\"editor_pick_lnk\" target=\"_blank\">【编辑推荐】为啥程序会有bug?<span id=\"editor_pick_count\"></span></a> <a href=\"/aggsite/headline\" title=\"查看更多编辑推荐\" class=\"right_more\">»</a></li><li><a href=\"https://www.cnblogs.com/51core/p/10613536.html\" target=\"_blank\" title=\"阅读1632, 评论14, 推荐27\">[最多推荐]基于Asp.Net Core的简单社区项目源代码开源(14/1632)</a> <a href=\"/aggsite/topdigged24h\" title=\"查看24小时推荐排行\" class=\"right_more\">»</a></li><li><a href=\"https://www.cnblogs.com/edison0621/p/10616738.html\" target=\"_blank\" title=\"阅读1192, 评论14, 推荐10\">[最多评论]【春华秋实】.NET Core之只是多看了你一眼(14/1192)</a> <a href=\"/aggsite/topcommented24h\" title=\"查看24小时评论排行\" class=\"right_more\">»</a></li><li><a href=\"https://news.cnblogs.com/n/622870/\" target=\"_blank\" title=\"阅读2627, 评论9, 推荐7\">[新闻头条]硬核老奶奶:81岁自学编程 半年时间开发上架一款App(9/2627)</a> <a href=\"https://news.cnblogs.com/\" title=\"查看更多新闻\" class=\"right_more\">»</a></li><li><a href=\"https://news.cnblogs.com/n/622930/\" target=\"_blank\" title=\"阅读809, 评论6, 推荐4\">[推荐新闻]民营运载火箭发射再失败,“中国马斯克”之困(6/809)</a> <a href=\"https://news.cnblogs.com/n/recommend\" title=\"查看更多推荐新闻\" class=\"right_more\">»</a></li></ul></div>\n\n"
+ " \n\n"
+ " \n"
+ " <div id=\"pager_top\" style=\"display:none\"></div>\n"
+ " <div id=\"post_list_tips\" class=\"hide\"></div>\n"
+ " \n"
+ " <div id=\"post_list\">\n"
+ " \n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('xuelongqy',10619304,276495,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10619304\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10619304\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/xuelongqy/p/10619304.html\" target=\"_blank\">Vue上拉加载下拉刷新---vue-easyrefresh</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/xuelongqy/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/801420/20151121115426.png\" alt=\"\"/></a> vue easyrefresh简介 正如名字一样,EasyRefresh很容易就能在基于Vue的Web应用上实现下拉刷新以及上拉加载操作,支持主流的PC和移动浏览器。它的功能灵感来源于与Android的SmartRefreshLayout,同样也吸取了很多三方库的优点。EasyRefresh中集成了 ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/xuelongqy/\" class=\"lightblue\">青忆qingyi</a> \n"
+ " 发布于 2019-03-29 09:40 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/xuelongqy/p/10619304.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/xuelongqy/p/10619304.html\" class=\"gray\">阅读(0)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('gdjk',10619281,491238,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10619281\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10619281\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/gdjk/p/10619281.html\" target=\"_blank\">龙岗一个月350的出租房,我搬出来了</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/gdjk/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/1598575/20190201153602.png\" alt=\"\"/></a> 阅读本文大概需要 6 分钟。 阅读本文大概需要 6 分钟。 阅读本文大概需要 6 分钟。 阅读本文大概需要 6 分钟。 好久没写文章了,因为最近的实在是太忙了,看到这一期的征文,不禁让我回想起了当初刚毕业的那个自己,一时之间感慨万千。 我的故事 很多慕课网的老用户可能了解过我的故事,在16年的时候我 ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/gdjk/\" class=\"lightblue\">LonelyKeyGuest</a> \n"
+ " 发布于 2019-03-29 09:35 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/gdjk/p/10619281.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/gdjk/p/10619281.html\" class=\"gray\">阅读(2)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('mfrank',10619263,320110,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10619263\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10619263\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/mfrank/p/10619263.html\" target=\"_blank\">【效率工具】史上最好用的SSH一键登录脚本,超强更新!</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/mfrank/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/1043143/20180825173331.png\" alt=\"\"/></a> 说明 虽然已经是凌晨,但丝毫不能掩盖我激动的心情,今天完成了对GotoSSH的一次大更新,新增了两个肥肠实用的功能,我只能说,是真的好用,话不多说,先来看效果图: 普通的一键登录: 一键登录跳板机,然后跳转登录线上服务器: 一键登录跳板机查看指定日志: 一键登录跳板机后跳转线上服务器查看指定日志: ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/mfrank/\" class=\"lightblue\">弗兰克的猫</a> \n"
+ " 发布于 2019-03-29 09:32 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/mfrank/p/10619263.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/mfrank/p/10619263.html\" class=\"gray\">阅读(18)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('liuhappy',10619261,424982,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10619261\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10619261\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/liuhappy/p/10619261.html\" target=\"_blank\">从0开始的Python学习012数据结构&对象与类</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/liuhappy/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/1368764/20180502094746.png\" alt=\"\"/></a> 简介 数据结构是处理数据的结构,或者说,他们是用来存储一组相关数据的。 在Python中三种内建的数据结构--列表、元组和字典。学会了使用它们会使编程变得的简单。 列表 list是处理一组有序的数据结构,即你可以在一个列表中存储一个序列的项目。在Python每个项目之间用逗号分隔。列表中的项目应该包 ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/liuhappy/\" class=\"lightblue\">Happy丶Liu</a> \n"
+ " 发布于 2019-03-29 09:31 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/liuhappy/p/10619261.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/liuhappy/p/10619261.html\" class=\"gray\">阅读(7)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('viyoung',10619158,472774,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10619158\">2</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10619158\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/viyoung/p/10619158.html\" target=\"_blank\">Spring Boot 2.x (十五):Dubbo + Zookeeper + 新版Dubbo Admin</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/viyoung/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/1528535/20190118135212.png\" alt=\"\"/></a> Dubbo 简介 Dubbo是阿里巴巴公司开源的一个 高性能 优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成 。 它提供了三大核心能力: 面向接口 的远程方法调用 智能容错 和 负载均衡 服务 自动注册 和发现。 可以看出图中存在着五种角色 ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/viyoung/\" class=\"lightblue\">Vi的技术博客</a> \n"
+ " 发布于 2019-03-29 09:15 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/viyoung/p/10619158.html#commentform\" title=\"2019-03-29 09:24\" class=\"gray\">\n"
+ " 评论(2)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/viyoung/p/10619158.html\" class=\"gray\">阅读(81)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('suihang',10610519,450240,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10610519\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10610519\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/suihang/p/10610519.html\" target=\"_blank\">TS学习随笔(三)->接口</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/suihang/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/1459059/20180806183429.png\" alt=\"\"/></a> 终于来到了比较重要的知识,接口,有多重要呢,反正是很重要好啵 在 TypeScript 中,我们使用接口(Interfaces)来定义对象的类型。 那什么是接口呢,在面向对象语言中,接口(Interfaces)是一个很重要的概念,它是对行为的抽象,而具体如何行动需要由类(classes)去实现(im ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/suihang/\" class=\"lightblue\">一只菜鸟攻城狮啊</a> \n"
+ " 发布于 2019-03-29 08:54 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/suihang/p/10610519.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/suihang/p/10610519.html\" class=\"gray\">阅读(69)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('yunen',10619061,328097,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10619061\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10619061\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/yunen/p/10619061.html\" target=\"_blank\">关于CSRF的那点事儿</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/yunen/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/1095571/20190324162056.png\" alt=\"\"/></a> 0x01 CSRF简介 & 160;& 160;& 160;& 160;CSRF,也称XSRF,即跨站请求伪造攻击,与XSS相似,但与XSS相比更难防范,是一种广泛存在于网站中的安全漏洞,经常与XSS一起配合攻击。 <! more 0x02 CSRF原理 & 160;& 160;& 160;& 16 ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/yunen/\" class=\"lightblue\">Yunen的博客</a> \n"
+ " 发布于 2019-03-29 08:47 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/yunen/p/10619061.html#commentform\" title=\"2019-03-29 08:58\" class=\"gray\">\n"
+ " 评论(1)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/yunen/p/10619061.html\" class=\"gray\">阅读(89)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('pig66',10618035,494280,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10618035\">1</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10618035\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/pig66/p/10618035.html\" target=\"_blank\">Python一行代码实现快速排序</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ " 上期文章排序算法——(2)Python实现十大常用排序算法为大家介绍了十大常用排序算法的前五种(冒泡、选择、插入、希尔、归并),因为快速排序的重要性,所以今天将单独为大家介绍一下快速排序! 上期文章排序算法——(2)Python实现十大常用排序算法为大家介绍了十大常用排序算法的前五种(冒泡、选择、插 ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/pig66/\" class=\"lightblue\">猪哥66</a> \n"
+ " 发布于 2019-03-29 08:38 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/pig66/p/10618035.html#commentform\" title=\"2019-03-29 09:17\" class=\"gray\">\n"
+ " 评论(2)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/pig66/p/10618035.html\" class=\"gray\">阅读(94)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('joy99',10618910,228233,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10618910\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10618910\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/joy99/p/10618910.html\" target=\"_blank\">java 并发——理解 wait / notify / notifyAll</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/joy99/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/758949/20160701123459.png\" alt=\"\"/></a> 一、前言 前情简介: \"java 并发——内置锁\" \"java 并发——线程\" java 面试是否有被问到过, 和 方法的区别,关于这个问题其实不用多说,大多数人都能回答出最主要的两点区别: sleep 是线程的方法, wait / notify / notifyAll 是 Object 类的方法; ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/joy99/\" class=\"lightblue\">SharpCJ</a> \n"
+ " 发布于 2019-03-29 08:29 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/joy99/p/10618910.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/joy99/p/10618910.html\" class=\"gray\">阅读(98)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('leisure_chn',10584948,445983,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10584948\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10584948\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/leisure_chn/p/10584948.html\" target=\"_blank\">FFmpeg编解码处理4-音频编码</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/leisure_chn/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/1446952/20190122100937.png\" alt=\"\"/></a> 本文为作者原创,转载请注明出处: FFmpeg编解码处理系列笔记: \"0]. [FFmpeg时间戳详解\" \"1]. [FFmpeg编解码处理1 转码全流程简介\" \"2]. [FFmpeg编解码处理2 编解码API详解\" \"3]. [FFmpeg编解码处理3 视频编码\" \"4]. [FFmpeg编解码 ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/leisure_chn/\" class=\"lightblue\">叶余</a> \n"
+ " 发布于 2019-03-29 08:29 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/leisure_chn/p/10584948.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/leisure_chn/p/10584948.html\" class=\"gray\">阅读(50)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('xiangyuecn',10618982,142281,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10618982\">1</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10618982\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/xiangyuecn/p/10618982.html\" target=\"_blank\">Fiddler抓包和修改WebSocket数据,支持wss</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/xiangyuecn/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/463618/20181111205015.png\" alt=\"\"/></a> 记录一下用 对`WebSocket`收发的数据进行抓包分析和篡改数据,只找到这么一个方法,能用就行吧。 时间:2019 3 29 环境: `+ Fiddler 5.0` Fiddler抓取WebSocket数据 中双击 即可查看此连接收发的数据。可惜此选项卡内没有带发送数据的功能(一个输入框(HEX ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/xiangyuecn/\" class=\"lightblue\">xiangyuecn</a> \n"
+ " 发布于 2019-03-29 07:41 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/xiangyuecn/p/10618982.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/xiangyuecn/p/10618982.html\" class=\"gray\">阅读(350)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('moonhmily',10618975,190911,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10618975\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10618975\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/moonhmily/p/10618975.html\" target=\"_blank\">上次被人说TK不好咯,这次给你整个高大上的</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/moonhmily/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/649191/20190227122307.png\" alt=\"\"/></a> 想要熟练使用PyQt,还是需要深入研究下这个库的使用,笔者这里只是抛砖引玉。 关注公众号「**Python专栏**」,后台回复:**zsxq06**,获取本文全套代码。 ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/moonhmily/\" class=\"lightblue\">上海小胖</a> \n"
+ " 发布于 2019-03-29 06:55 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/moonhmily/p/10618975.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/moonhmily/p/10618975.html\" class=\"gray\">阅读(118)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('minotauros',10618913,460575,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10618913\">2</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10618913\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/minotauros/p/10618913.html\" target=\"_blank\">C#闭包</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/minotauros/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/839833/20180914114621.png\" alt=\"\"/></a> 1.匿名方法和Lambda表达式中可以访问到声明该匿名方法或Lambda表达式所在方法中的参数或局部变量,这些变量称为外部变量(Outer Variable),外部变量的生命周期会持续到引用匿名方法或Lambda表达式的委托实例被垃圾回收器回收为止: 2.调用匿名方法或Lambda表达式时,访问到的 ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/minotauros/\" class=\"lightblue\">Minotauros</a> \n"
+ " 发布于 2019-03-29 02:08 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/minotauros/p/10618913.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/minotauros/p/10618913.html\" class=\"gray\">阅读(199)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('idiotgroup',10618891,155885,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10618891\">1</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10618891\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/idiotgroup/p/10618891.html\" target=\"_blank\">TICTOC: Header Only C++ Timer</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/idiotgroup/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/542753/20160505183004.png\" alt=\"\"/></a> Header Only C++ Timer,简易实用的C++计时器,本文的重点在于项目中用到的C++编程的知识(单例、宏、名字空间等,我也不知道为啥这个功能需要这么多技术,但确实都是要用到的),以及安利一下自己编写的库。欢迎大家star和mr。感恩~ ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/idiotgroup/\" class=\"lightblue\">喵耳朵</a> \n"
+ " 发布于 2019-03-29 01:32 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/idiotgroup/p/10618891.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/idiotgroup/p/10618891.html\" class=\"gray\">阅读(43)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('sanchang',10614074,441986,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10614074\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10614074\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/sanchang/p/10614074.html\" target=\"_blank\">React 精要面试题讲解(五) 高阶组件真解</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/sanchang/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/1425733/20180620223626.png\" alt=\"\"/></a> 高阶组件存在组合(也可称之为代理)和继承两种形式,学习本章内容,让你彻底消化React高阶组件。 ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/sanchang/\" class=\"lightblue\">散场丶丶</a> \n"
+ " 发布于 2019-03-29 01:15 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/sanchang/p/10614074.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/sanchang/p/10614074.html\" class=\"gray\">阅读(60)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('phpstudy2015-6',10618707,258167,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10618707\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10618707\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/phpstudy2015-6/p/10618707.html\" target=\"_blank\">Java 集合系列(二)—— ArrayList</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/phpstudy2015-6/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/789055/20161204181900.png\" alt=\"\"/></a> ArrayList ArrayList 是通过一个数组来实现的,因此它是在连续的存储位置存放对象的引用,只不过它比 Array 更智能,能够根据集合长度进行自动扩容。 假设让我们来实现一个简单的能够自动扩容的数组,我们最容易想到的点就是: 实际上,ArrayList的内部实现原理也是这样子,我们可以 ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/phpstudy2015-6/\" class=\"lightblue\">那一叶随风</a> \n"
+ " 发布于 2019-03-29 00:20 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/phpstudy2015-6/p/10618707.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/phpstudy2015-6/p/10618707.html\" class=\"gray\">阅读(105)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('xiexj',10618714,334942,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10618714\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10618714\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/xiexj/p/10618714.html\" target=\"_blank\">Kubernetes的DaemonSet(下篇)</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/xiexj/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/1112728/20180420145036.png\" alt=\"\"/></a> 用Daemon Pod来进行通信 使用Pod来再DaemonSet中通信的手段有: 推的方式:在DaemonSet中的Pod会被配置成发送更新到如状态数据库这样的服务。这些都没有客户端。 IP+端口方式:DaemonSet中的Pod可以使用主机端口。因此通过node的IP就可以访问。客户端知道了no ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/xiexj/\" class=\"lightblue\">编程一生</a> \n"
+ " 发布于 2019-03-29 00:07 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/xiexj/p/10618714.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/xiexj/p/10618714.html\" class=\"gray\">阅读(39)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('jyzhao',10618658,186567,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10618658\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10618658\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/jyzhao/p/10618658.html\" target=\"_blank\">Oracle 10g RAC OCR、Voting disk更换</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/jyzhao/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/635610/20160310163558.png\" alt=\"\"/></a> 环境: OEL 5.7 + Oracle 10.2.0.5 RAC 需求: 更换存储,OCR、Voting disk同时需要更换到新存储。 \"1.替换OCR\" \"2.替换voting disk\" 1.替换OCR 替换OCR(Oracle Cluster Registry)首先需要关闭RAC所有节点的 ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/jyzhao/\" class=\"lightblue\">AlfredZhao</a> \n"
+ " 发布于 2019-03-28 23:55 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/jyzhao/p/10618658.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/jyzhao/p/10618658.html\" class=\"gray\">阅读(44)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('lart',10618665,327824,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10618665\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10618665\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/lart/p/10618665.html\" target=\"_blank\">生产与学术之Pytorch模型导出为安卓Apk尝试记录</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/lart/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/1094855/20170112224706.png\" alt=\"\"/></a> 生产与学术 写于 2019 01 08 的旧文, 当时是针对一个比赛的探索. 觉得可能对其他人有用, 就放出来分享一下 生产与学术, 真实的对立... 这是我这两天对 的这个流程的一个切身感受. 说句实在的, 对于模型转换的探索, 算是我这两天最大的收获了... 全部浓缩在了这里: 鉴于github ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/lart/\" class=\"lightblue\">lart</a> \n"
+ " 发布于 2019-03-28 23:53 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/lart/p/10618665.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/lart/p/10618665.html\" class=\"gray\">阅读(35)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ "<div class=\"post_item\">\n"
+ "<div class=\"digg\">\n"
+ " <div class=\"diggit\" onclick=\"DiggPost('Wayou',10618645,123544,1)\"> \n"
+ " <span class=\"diggnum\" id=\"digg_count_10618645\">0</span>\n"
+ " </div>\n"
+ " <div class=\"clear\"></div>\n"
+ " <div id=\"digg_tip_10618645\" class=\"digg_tip\"></div>\n"
+ "</div> \n"
+ "<div class=\"post_item_body\">\n"
+ " <h3><a class=\"titlelnk\" href=\"https://www.cnblogs.com/Wayou/p/type_alias_vs_interface.html\" target=\"_blank\">TypeScript: type alias 与 interface</a></h3> \n"
+ " <p class=\"post_item_summary\">\n"
+ "<a href=\"https://www.cnblogs.com/Wayou/\" target=\"_blank\"><img width=\"48\" height=\"48\" class=\"pfs\" src=\"//pic.cnblogs.com/face/431064/20140914104240.png\" alt=\"\"/></a> 官方文档中有关于两者对比的信息,隐藏在 TypeScript Handbook 中,见 Interfaces vs. Type Aliases 部分。 但因为这一部分很久没更新了,所以其中描述的内容不一定全对。 比如, 区别点之一:Type Alias 不会创建新的类型,体现在错误信息上。 One ...\n"
+ " </p> \n"
+ " <div class=\"post_item_foot\"> \n"
+ " <a href=\"https://www.cnblogs.com/Wayou/\" class=\"lightblue\">刘哇勇</a> \n"
+ " 发布于 2019-03-28 23:45 \n"
+ " <span class=\"article_comment\"><a href=\"https://www.cnblogs.com/Wayou/p/type_alias_vs_interface.html#commentform\" title=\"\" class=\"gray\">\n"
+ " 评论(0)</a></span><span class=\"article_view\"><a href=\"https://www.cnblogs.com/Wayou/p/type_alias_vs_interface.html\" class=\"gray\">阅读(39)</a></span></div>\n"
+ "</div>\n"
+ "<div class=\"clear\"></div>\n"
+ "</div>\n"
+ " \n\n"
+ " </div>\n"
+ " <script>editorPickStat(); aggSite.user.getUserInfo();</script>\n"
+ " <script type=\"text/javascript\">\n"
+ " var aggSiteModel = {\"CategoryType\":\"SiteHome\",\"ParentCategoryId\":0,\"CategoryId\":808,\"PageIndex\":1,\"TotalPostCount\":4000,\"ItemListActionName\":\"PostList\"};\n"
+ " </script>\n"
+ " <div id=\"pager_bottom\"><div id=\"paging_block\"><div class=\"pager\"><a href=\"/\" class=\"p_1 current\" onclick=\"aggSite.loadCategoryPostList(1,20);buildPaging(1);return false;\">1</a><a href=\"/sitehome/p/2\" class=\"p_2 middle\" onclick=\"aggSite.loadCategoryPostList(2,20);buildPaging(2);return false;\">2</a><a href=\"/sitehome/p/3\" class=\"p_3 middle\" onclick=\"aggSite.loadCategoryPostList(3,20);buildPaging(3);return false;\">3</a><a href=\"/sitehome/p/4\" class=\"p_4 middle\" onclick=\"aggSite.loadCategoryPostList(4,20);buildPaging(4);return false;\">4</a><a href=\"/sitehome/p/5\" class=\"p_5 middle\" onclick=\"aggSite.loadCategoryPostList(5,20);buildPaging(5);return false;\">5</a><a href=\"/sitehome/p/6\" class=\"p_6 middle\" onclick=\"aggSite.loadCategoryPostList(6,20);buildPaging(6);return false;\">6</a><a href=\"/sitehome/p/7\" class=\"p_7 middle\" onclick=\"aggSite.loadCategoryPostList(7,20);buildPaging(7);return false;\">7</a><a href=\"/sitehome/p/8\" class=\"p_8 middle\" onclick=\"aggSite.loadCategoryPostList(8,20);buildPaging(8);return false;\">8</a><a href=\"/sitehome/p/9\" class=\"p_9 middle\" onclick=\"aggSite.loadCategoryPostList(9,20);buildPaging(9);return false;\">9</a><a href=\"/sitehome/p/10\" class=\"p_10 middle\" onclick=\"aggSite.loadCategoryPostList(10,20);buildPaging(10);return false;\">10</a><a href=\"/sitehome/p/11\" class=\"p_11 middle\" onclick=\"aggSite.loadCategoryPostList(11,20);buildPaging(11);return false;\">11</a><span class=\"ellipsis\">···</span><a href=\"/sitehome/p/200\" class=\"p_200 last\" onclick=\"aggSite.loadCategoryPostList(200,20);buildPaging(200);return false;\">200</a><a href=\"/sitehome/p/2\" onclick=\"aggSite.loadCategoryPostList(2,20);buildPaging(2);return false;\">Next ></a></div></div><script type=\"text/javascript\">var pagingBuider={\"OnlyLinkText\":false,\"TotalCount\":4000,\"PageIndex\":1,\"PageSize\":20,\"ShowPageCount\":5,\"SkipCount\":0,\"UrlFormat\":\"/sitehome/p/{0}\",\"OnlickJsFunc\":\"aggSite.loadCategoryPostList()\",\"FirstPageLink\":\"/\",\"AjaxUrl\":\"/mvc/ToolkitPaging/load.aspx\",\"AjaxCallbak\":null,\"TopPagerId\":\"pager_top\",\"IsRenderScript\":true};function buildPaging(pageIndex){pagingBuider.PageIndex=pageIndex;$.ajax({url:pagingBuider.AjaxUrl,data:JSON.stringify(pagingBuider),type:'post',dataType:'text',contentType:'application/json; charset=utf-8',success:function (data) { $('#paging_block').html(data); var pagerTop=$('#pager_top');if(pageIndex>1){$(pagerTop).html(data).show();}else{$(pagerTop).hide();}}});}</script>\n"
+ "</div>\n"
+ " <div id=\"side_nav\">\n"
+ " \n"
+ "<div id=\"cate_title_block\">\n"
+ "<div id=\"cate_title_title\"><div class=\"cate_title\">网站分类</div></div>\n"
+ "<ul id=\"cate_item\">\n"
+ "<li id=\"cate_item_108698\" onmouseover=\"cateShow(108698)\" onmouseout=\"cateHidden(108698)\">\n"
+ "<a href=\"/cate/108698/\">.NET技术(4)</a>\n"
+ "</li>\n"
+ "<li id=\"cate_item_2\" onmouseover=\"cateShow(2)\" onmouseout=\"cateHidden(2)\">\n"
+ "<a href=\"/cate/2/\">编程语言(8)</a>\n"
+ "</li>\n"
+ "<li id=\"cate_item_108701\" onmouseover=\"cateShow(108701)\" onmouseout=\"cateHidden(108701)\">\n"
+ "<a href=\"/cate/108701/\">软件设计(2)</a>\n"
+ "</li>\n"
+ "<li id=\"cate_item_108703\" onmouseover=\"cateShow(108703)\" onmouseout=\"cateHidden(108703)\">\n"
+ "<a href=\"/cate/108703/\">Web前端(2)</a>\n"
+ "</li>\n"
+ "<li id=\"cate_item_108704\" onmouseover=\"cateShow(108704)\" onmouseout=\"cateHidden(108704)\">\n"
+ "<a href=\"/cate/108704/\">企业信息化(2)</a>\n"
+ "</li>\n"
+ "<li id=\"cate_item_108705\" onmouseover=\"cateShow(108705)\" onmouseout=\"cateHidden(108705)\">\n"
+ "<a href=\"/cate/108705/\">手机开发(3)</a>\n"
+ "</li>\n"
+ "<li id=\"cate_item_108709\" onmouseover=\"cateShow(108709)\" onmouseout=\"cateHidden(108709)\">\n"
+ "<a href=\"/cate/108709/\">软件工程(3)</a>\n"
+ "</li>\n"
+ "<li id=\"cate_item_108712\" onmouseover=\"cateShow(108712)\" onmouseout=\"cateHidden(108712)\">\n"
+ "<a href=\"/cate/108712/\">数据库技术(1)</a>\n"
+ "</li>\n"
+ "<li id=\"cate_item_108724\" onmouseover=\"cateShow(108724)\" onmouseout=\"cateHidden(108724)\">\n"
+ "<a href=\"/cate/108724/\">操作系统(5)</a>\n"
+ "</li>\n"
+ "<li id=\"cate_item_4\" onmouseover=\"cateShow(4)\" onmouseout=\"cateHidden(4)\">\n"
+ "<a href=\"/cate/4/\">其他分类(20)</a>\n"
+ "</li>\n"
+ "<li id=\"cate_item_0\" onmouseover=\"cateShow(0)\" onmouseout=\"cateHidden(0)\">\n"
+ "<a href=\"/cate/all/\">所有随笔(161)</a>\n"
+ "</li>\n"
+ "<li id=\"cate_item_-1\" onmouseover=\"cateShow(-1)\" onmouseout=\"cateHidden(-1)\">\n"
+ "<a href=\"/comment/\">所有评论(44)</a>\n"
+ "</li>\n"
+ "</ul>\n"
+ "<div class=\"cate_bottom\"></div>\n"
+ "<div id=\"cate_sub_block\"></div>\n"
+ "<script type=\"text/javascript\">var cateIdList = '108698,2,108701,108703,108704,108705,108709,108712,108724,4';aggSite.loadSubCategories();</script>\n"
+ "</div>\n"
+ " <div class=\"l_s\"></div>\n"
+ "<p class=\"r_l_3\"></p><p class=\"r_l_2\"></p><p class=\"r_l_1\"></p>\n"
+ "<div class=\"w_l\">\n"
+ "<h4>链接</h4> \n"
+ "<ul>\n"
+ " <li><a href=\"https://group.cnblogs.com/forum/public/\" target=\"_blank\">反馈或建议</a></li> \n"
+ " <li><a href=\"//www.cnblogs.com/cmt/\" target=\"_blank\">官方博客</a></li>\n"
+ " <li><a href=\"/skins.aspx\" target=\"_blank\">博客模板</a></li>\n"
+ " <li><a href=\"http://www.blogjava.net/\">Java博客</a></li>\n"
+ " <li><a href=\"http://www.cppblog.com/\">C++博客</a></li>\n"
+ " <li><a href=\"//www.cnblogs.com/cmt/archive/2009/09/26/1574616.html\">手机版</a></li>\n"
+ "</ul>\n"
+ "</div>\n"
+ "<p class=\"r_l_1\"></p><p class=\"r_l_2\"></p><p class=\"r_l_3\"></p>\n"
+ "<div class=\"l_s\"></div>\n"
+ "<div id=\"user_stats\"></div>\n"
+ "<div class=\"l_s\"></div> \n"
+ "<p class=\"r_l_3\"></p><p class=\"r_l_2\"></p><p class=\"r_l_1\"></p>\n"
+ "<div class=\"w_l\"> \n"
+ "<h4>统计信息</h4>\n"
+ "<div id=\"site_stats\"></div> \n"
+ "</div>\n"
+ "<p class=\"r_l_1\"></p><p class=\"r_l_2\"></p><p class=\"r_l_3\"></p>\n\n"
+ " </div>\n"
+ " <div id=\"side_right\">\n"
+ " <div id=\"search_block\">\n"
+ " <div class=\"side_search\">\n"
+ " <input type=\"text\" id=\"zzk_q\" class=\"search_input\" onkeydown=\"return zzk_go_enter(event);\" tabindex=\"3\" /><input onclick=\"zzk_go()\" type=\"button\" class=\"search_btn\" value=\"找找看\" />\n"
+ " </div>\n"
+ " <div id=\"google_search\" class=\"side_search\">\n"
+ " <input type=\"text\" id=\"google_search_q\" class=\"search_input\" onkeydown=\"return google_search_enter(event);\" /><input type=\"button\" value=\"Google\" class=\"search_btn\" onclick=\"return google_search();\" />\n"
+ " </div>\n"
+ " </div>\n"
+ " <div id=\"cnblogs_a1\">\n"
+ " <div id='div-gpt-ad-1547816814884-0' style='height:60px; width:468px;'>\n"
+ " <script>\n"
+ " googletag.cmd.push(function () { googletag.display('div-gpt-ad-1547816814884-0'); });\n"
+ " </script>\n"
+ " </div>\n"
+ " </div>\n"
+ " <div id=\"cnblogs_b1\" class=\"sidebar-image\">\n"
+ " <div id='div-gpt-ad-1546331539224-0' style='height:250px; width:300px;'>\n"
+ " <script>\n"
+ " googletag.cmd.push(function () { googletag.display('div-gpt-ad-1546331539224-0'); });\n"
+ " </script>\n"
+ " </div>\n"
+ " </div>\n"
+ " <div id=\"ad_right_text\" class=\"ad_right_text\"></div>\n"
+ " <div id=\"side_right_block\"></div>\n"
+ " </div>\n"
+ " </div>\n"
+ " <div id=\"footer\">\n"
+ " <div class=\"footer_block\">\n"
+ " <p class=\"r_b_3\"></p><p class=\"r_b_2\"></p><p class=\"r_b_1\"></p><div id=\"friend_link\">\n"
+ " 友情链接:<a href=\"https://www.aliyun.com\" target=\"_blank\">阿里云</a><a href=\"https://cloud.tencent.com/?fromSource=gwzcw.541531.541531.541531\" target=\"_blank\">腾讯云</a><a href=\"https://www.163yun.com\" target=\"_blank\">网易云</a><a href=\"https://cloud.baidu.com\" target=\"_blank\">百度云</a><a href=\"https://www.jdcloud.com\" target=\"_blank\">京东云</a><a href=\"http://www.hujiang.com\" target=\"_blank\">沪江网</a><a href=\"http://www.chinaz.com/\" target=\"_blank\">站长之家</a><a href=\"http://dev.yesky.com\" target=\"_blank\">天极网</a><a href=\"http://down.admin5.com\" target=\"_blank\">A5源码下载</a><a href=\"http://www.gcpowertools.com.cn\" target=\"_blank\">葡萄城控件</a><a href=\"https://www.upyun.com/?md=cnblogs\" target=\"_blank\">又拍云</a><a href=\"http://zt.cnblogs.com/tingyun/\" target=\"_blank\">听云APP</a><a href=\"http://www.hightopo.com/cn-index.html\" target=\"_blank\">图扑软件</a><a href=\"http://www.cnblogs.com/mipengine/\" target=\"_blank\">百度MIP博客</a><a href=\"http://wetest.qq.com/?from=links_cnblogs\" target=\"_blank\">腾讯WeTest</a><a href=\"http://yaq.qq.com/\" target=\"_blank\">腾讯御安全</a><a href=\"http://www.ucancode.com/index.html\" target=\"_blank\">工控组态源码</a><a href=\"https://163yun.cnblogs.com/\" target=\"_blank\">网易云博客</a><a href=\"https://www.qiniu.com/\" target=\"_blank\">七牛云</a><a href=\"https://www.huanpingge.com/\" target=\"_blank\">换屏哥手机维修</a>\n"
+ "</div><p class=\"r_b_1\"></p><p class=\"r_b_2\"></p><p class=\"r_b_3\"></p>\n"
+ " </div>\n"
+ " </div>\n"
+ " <div id=\"footer_bottom\">\n"
+ " <div><a href=\"https://about.cnblogs.com/\">关于博客园</a><a href=\"https://about.cnblogs.com/contact\">联系我们</a><a href=\"https://about.cnblogs.com/ad\">广告服务</a>©2004-2019<a href=\"http://www.cnblogs.com/\">博客园</a>保留所有权利<a href=\"http://www.miitbeian.gov.cn\" target=\"_blank\">沪ICP备09004260号</a></div>\n"
+ " <div><a href=\"https://ss.knet.cn/verifyseal.dll?sn=e131108110100433392itm000000&ct=df&a=1&pa=0.25787803245785335\" rel=\"nofollow\" target=\"_blank\"><img id=\"cnnic_img\" src=\"//common.cnblogs.com/images/cnnic.png\" alt=\"\" width=\"64\" height=\"23\" /></a><a target=\"_blank\" href=\"http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=31011502001144\" style=\"display:inline-block;text-decoration:none;height:20px;line-height:20px;\"><img src=\"//common.cnblogs.com/images/ghs.png\" alt=\"\" /><img id=\"cnnic_img\" src=\"//common.cnblogs.com/images/cnnic.png\" alt=\"\" width=\"64\" height=\"23\" /></a><a target=\"_blank\" href=\"http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=31011502001144\" style=\"display:inline-block;text-decoration:none;height:20px;line-height:20px;\"><img src=\"//common.cnblogs.com/images/ghs.png\" alt=\"\" /><span style=\"float:left;height:20px;line-height:20px;margin: 0 5px 0 5px; color:#939393;\">沪公网安备 31011502001144号</span></a></div>\n"
+ " </div>\n"
+ " </div>\n"
+ "</body>\n"
+ "</html>\n";
final Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
final Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
for (int i = 1; i <= matcher.groupCount(); i++) {
System.out.println("Group " + i + ": " + matcher.group(i));
}
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Java, please visit: https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html