请问以下的文章我想要抓取出图片链接怎么做呢
期望得到结果 :
[
"https://pic1.zhimg.com/v2-e2a3d00a61269e4b136df4d9343b5d04_b.jpeg",
"https://pic1.zhimg.com/v2-be76771c70ca3852041a25f256892244_b.jpeg",
"https://pic1.zhimg.com/80/v2-7b13e969fe35c10a83a92e39cb73fa2e_720w.jpeg"
]
输入资料 :
## [超详细的阿里字节Spring面试技术点总结(建议收藏)](https://www.cnblogs.com/zhuifeng523/p/13541817.html)
一线互联网公司面试常问的spring核心知识点总结
## 前言
Spring作为现在最流行Java开发技术,其内部源码设计非常优秀。
Spring这个词对于Java开发者想必不会陌生,可能你每天都在使用Spring,享受着Spring生态提供的服务。现在很多互联网公司都把Spring作为招聘面试其中最重要的知识点之一来考核。
毫不夸张的说,Java程序员想要进一线大厂,Spring是必须要掌握的。
文末有福利~
![](https://pic1.zhimg.com/v2-e2a3d00a61269e4b136df4d9343b5d04_b.jpeg)
做程序员难,做一个2020年的程序员更难,随着IT人员越来越多,我们的竞争压力也越来越大,想要在茫茫人海中脱颖而出,其实考察的就是我们技术栈的广度和深度。
一般Spring面试的哲学三问,是什么?为什么?怎么用?
![](https://pic1.zhimg.com/v2-be76771c70ca3852041a25f256892244_b.jpeg)
Spring底层到底要看什么?以下是总结的spring核心知识点,给大家分享一下,希望可以对你掌握Spring有所帮助。
先分享一个Spring知识点思维导图给大家
![](https://pic1.zhimg.com/80/v2-7b13e969fe35c10a83a92e39cb73fa2e_720w.jpeg)
var str = "![](https://1.jpeg)";
var list = Regex.Matches(str, @"(?:!\[.*\]\()(.*)(?:\))");
var list1 = new List<string>();
foreach (Match item in list)
{
list1.Add(item.Groups[1].Value);
}
正则多匹配,正则表达式:https://(.*?).jpeg
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
namespace Common
{
/// <summary>
///
/// </summary>
public class RegexHelper
{
#region 正则单匹配
/// <summary>
/// 正则单匹配
/// </summary>
/// <param name="htmltext"></param>
/// <param name="pattern"></param>
/// <param name="isCut"></param>
/// <returns></returns>
public static string _GetMatchStr(string htmltext, string pattern, bool isCut = true)
{
var result = "";
try
{
var regex = new Regex(pattern, RegexOptions.Singleline | RegexOptions.IgnoreCase);
var match = regex.Match(htmltext);
if (match.Success)
{
result = match.ToString();
if (isCut)
{
var replaceStrs = new string[2];
if (pattern.Contains("(.*?)"))
{
string splitStr = pattern.Replace("(.*?)", "^");
replaceStrs = splitStr.Split('^');
}
result = result.Replace(replaceStrs[0], "").Replace(replaceStrs[1], "");
}
}
}
catch (Exception)
{
}
return result;
}
#endregion
#region 正则多匹配
/// <summary>
/// 正则多匹配
/// </summary>
/// <param name="context"></param>
/// <param name="pattern"></param>
/// <returns></returns>
public static ArrayList _GetMathList(string context, string pattern, bool isCut = true)
{
var list = new ArrayList();
try
{
var regex = new Regex(pattern, RegexOptions.Singleline | RegexOptions.IgnoreCase);
var mc = regex.Matches(context);
for (int i = 0; i < mc.Count; i++)
{
var result = mc[i].Value.ToString();
if (isCut)
{
var replaceStrs = new string[2];
if (pattern.Contains("(.*?)"))
{
string splitStr = pattern.Replace("(.*?)", "^");
replaceStrs = splitStr.Split('^');
}
result = result.Replace(replaceStrs[0], "").Replace(replaceStrs[1], "");
}
list.Add(result);
}
}
catch (Exception) { }
return list;
}
#endregion
}
}
var a = "文末有福利~ ![](https://pic1.zhimg.com/v2-e2a3d00a61269e4b136df4d9343b5d04_b.jpeg) 做程序员难,做一个2020年的程序员更难,随着IT人员越来越多,我们的竞争压力也越来越大,想要在茫茫人海中脱颖而出,其实考察的就是我们技术栈的广度和深度。 一般Spring面试的哲学三问,是什么?为什么?怎么用? ![](https://pic1.zhimg.com/v2-be76771c70ca3852041a25f256892244_b.jpeg) Spring底层到底要看什么?"; a.match(/http[s]?:\/\/pic1\.zhimg\.com\/.*?\.jpeg/g);
类似这样,中间域名随便你要不要?