社区
C#
帖子详情
一个稍微有点难度的问题:如何做HTML语法分析?
popcorn
2003-07-24 09:58:40
比如我要提炼出一个HTML文件中有多少个图片,多少个TABLE,多少个JS函数,多少个超级连接等等,然后还可以将超级连接提炼出来保存到数据库中去。象FP和DW的可视化编辑器都是如何提炼语法的?我试了很多正则表达式都很难达到理想效果,不知道哪里有好的算法去提取HTML中的标记?
提供思路、算法或者参考资料都给分。
...全文
178
14
打赏
收藏
一个稍微有点难度的问题:如何做HTML语法分析?
比如我要提炼出一个HTML文件中有多少个图片,多少个TABLE,多少个JS函数,多少个超级连接等等,然后还可以将超级连接提炼出来保存到数据库中去。象FP和DW的可视化编辑器都是如何提炼语法的?我试了很多正则表达式都很难达到理想效果,不知道哪里有好的算法去提取HTML中的标记? 提供思路、算法或者参考资料都给分。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
杨东明
2003-07-26
打赏
举报
回复
【利用 Microsoft 的 HTML 分析器来获得 Web 站点的数据】
http://www.microsoft.com/china/msdn/workshop/scrape.asp#top
看看就知道怎么做了,我想这样做才是最好的解决方案
大家一起学习....
dotnba
2003-07-26
打赏
举报
回复
听课
ArLi2003
2003-07-26
打赏
举报
回复
那用正则匹配就是了
popcorn
2003-07-26
打赏
举报
回复
楼上的理解错了,我要做的是字符串分析,不是用JS显示给客户看。
我想用正则表达式应该是最简单的了,思归给的参考方法也很不错。
ArLi2003
2003-07-26
打赏
举报
回复
var images = document.all.tags("IMG");
for (var iImgCounter = 0; iImgCounter < images.length; iImgCounter++) {
var imgTmp = images(iImgCounter);
var urlTmp = imgTmp.href;
.....
panyee
2003-07-25
打赏
举报
回复
其实每个生成的html页面都可以把它们提炼成一个xml文件, 你就寻找此文件中是否包含了<A>,
<TABLE> 这种标签的字符串, 取得它们的内容,
起始位置就是"<A...", 结束位置就是再找到一个"/A>"
然后再分析<a 里面的各个属性的名称和值,,
做起来也很有意思
可惜偶有其它东东要忙
erigido
2003-07-25
打赏
举报
回复
学习
xixigongzhu
2003-07-25
打赏
举报
回复
知道csc干嘛的把,它有个过程是词法分析器分析词法。
实际上html也是门语言,它也有词法分析器,如果不闲麻烦,可以做个简单点的词法分析器,来实现你的这些功能,这也不是很难的,只是有点麻烦。
正则表达式的话只要你的表达式精确,应该是没有问题的。
liduke
2003-07-25
打赏
举报
回复
正则表达式中不是有分组和命名捕获字符串有匹配这项吗?我觉得应该可行。
如从 URL 提取协议和端口号
String Extension(String url)
{
Regex r = new Regex(@"^(?<proto>\w+)://[^/]+?(?<port>:\d+)?/",
RegexOptions.Compiled);
return r.Match(url).Result("${proto}${port}");
}
rqxiang
2003-07-25
打赏
举报
回复
gz
popcorn
2003-07-25
打赏
举报
回复
如果碰到都是规则的HTML代码还好,要是碰到写的不很规范的(但是你不能说有错),分析起来难度就大多了.不知道大家有什么好的建议?
saucer
2003-07-24
打赏
举报
回复
or get
GotDotNet User Sample: SgmlReader 1.1
http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid=B90FDDCE-E60D-43F8-A5C4-C3BD760564BC
saucer
2003-07-24
打赏
举报
回复
A Yacc grammar for HTML
http://www.di.unito.it/mail_archive/YACCHTML/0000.html
An Elementary HTML Parser
http://www.codeproject.com/csharp/HTMLParser.asp
popcorn
2003-07-24
打赏
举报
回复
JAVA中有类帮助实现,这里有篇JAVA的文章:
http://www.chinajavaworld.net/doc/lang/46.html
C#中又该如何做呢?
java和c语言的区别_浅谈:Java和C语言各自的学习
难度
本文探讨了Java和C语言的学习
难度
。Java作为面向对象语言,其抽象程度较高,学习过程中需要理解面向对象编程的概念、编程思想和框架使用。C语言作为面向过程语言,学习
难度
相对较小,但指针操作是一大挑战。尽管两者
难度
不同,但都是适合初学者的编程语言,应用场景各有侧重。选择时应根据个人兴趣和目标进行决定。
从 0 到发布:用 AI
做
一个
「真正能上线」的小游戏(程序员实战版)
本文介绍如何利用AI工具(如ChatGPT、Cursor)快速开发并发布一款真正可上线的轻量级
HTML
5小游戏。核心流程包括:一句话明确定义游戏规则;AI生成完整单文件index.
html
(含Canvas渲染、状态管理与碰撞逻辑);仅优化体验细节而不重构架构;进行最小化UI包装;最后通过GitHub Pages等方案5分钟完成公网部署。全程聚焦前端技术栈,无需后端或复杂引擎。
javaweb、spring、springmvc和springboot有什么区别,都是
做
什么用的?
本文介绍了JavaWeb的发展历程,从JDBC、Servlet和JSP开始,到MVC思想的出现,再到Spring框架统一JavaWeb开发。随后讲述了Spring Boot的问世,它基于Spring简化了框架整合
难度
,核心是约定大于配置。最后提到前后端彻底分离,前端有了自己的项目和主流框架。
解决粘贴WORD公式到
HTML
编辑器中的常见
问题
该博客围绕解决粘贴WORD公式到
HTML
编辑器的常见
问题
展开。介绍了一款开源免费的解决方案,支持多种编辑器、开发语言和平台,具备导入多种文档、复制粘贴等功能。还提供完整源代码、免费技术支持及授权码生成器,能满足企业和个人需求。
初学-
HTML
加入大学科技中心后,通过技术部培训开始接触
HTML
。初次作业即利用
HTML
制作个人课程表,虽初期进展顺利,但后续任务逐渐增加
难度
。
C#
111,129
社区成员
642,541
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章