获取文本中所有的<img>标签的位置,获取所有img标签的src
2024-09-04 10:17:21
public static int[] GetImagePos(string str)
{
str = str.Replace("$", " ");
str = Regex.Replace(str, @"(?!<img.+?>)<.+?>", "");
str = Regex.Replace(str, @"<img\b[^>]*>", "$");
int startPos = 0;
int foundPos = -1;
int count = 0;
List<int> foundItems = new List<int>(); do
{
foundPos = str.IndexOf("$", startPos);
if (foundPos > -1)
{
startPos = foundPos + 1;
count++;
foundItems.Add(foundPos);
}
} while (foundPos > -1 && startPos < str.Length); return ((int[])foundItems.ToArray());
}
/// <summary>
/// 获取Img的路径
/// </summary>
/// <param name="htmlText">Html字符串文本</param>
/// <returns>以数组形式返回图片路径</returns>
public static string[] GetHtmlImageUrlList(string htmlText)
{
Regex regImg = new Regex(@"<img\b[^<>]*?\bsrc[\s\t\r\n]*=[\s\t\r\n]*[""']?[\s\t\r\n]*(?<imgUrl>[^\s\t\r\n""'<>]*)[^<>]*?/?[\s\t\r\n]*>", RegexOptions.IgnoreCase);
//新建一个matches的MatchCollection对象 保存 匹配对象个数(img标签)
MatchCollection matches = regImg.Matches(htmlText);
int i = 0;
string[] sUrlList = new string[matches.Count];
//遍历所有的img标签对象
foreach (Match match in matches)
{
//获取所有Img的路径src,并保存到数组中
sUrlList[i++] = match.Groups["imgUrl"].Value;
}
return sUrlList;
}
最新文章
- Python: Win7下使用 pip install lxml 无法安装lxml?
- lower函数
- AX2012自定义注释脚本开发
- 中石油-高精度阶乘-java
- POJ 3254 压缩状态DP
- .net互转java 转行必备
- checkbox选中问题
- Flex4 布局 元素index
- Vuex 模块化实现待办事项的状态管理
- Nginx创建密码保护目录
- 2018-2019-2 20175306实验一《Java开发环境的熟悉》实验报告
- Verification of Model Transformations A Survey of the State-of-the-Art 模型转换的验证 对现状的调查
- Rip配置
- JavaScript 基础数组循环和迭代的几种方法
- 六款值得推荐的Android开源框架简介
- NLP常用语料集合
- apache的日志access_log分析
- 解题:JSOI 2008 Blue Mary的战略地图
- redis一主二从三哨兵
- Linux 优化详解
热门文章
- 【php】---mysql语法增、删、改、查---【巷子】
- 170523、快速提升你 MySQL 数据库的段位
- Go Configure Support hot reloading.
- Mongo Rocks 在SSD盘上表现优秀,专门为SSD盘的优化
- ping 10.13.5.233
- 理解本真的REST架构风格(转,解释的最清楚)
- Openstack(七)keystone
- PHP 自动加载的简单实现(推荐)
- Spark2.0 shuffle service
- 使用Github发布自己的网站