社区
数据结构与算法
帖子详情
请问那位大哥有过开发HTML浏览器(读取网页标签的算法)的经验?100分送上
Putao
2000-08-27 09:11:00
小弟正在开发一简易网页浏览器,需要在程序中识别网页标签,
包括:标签名(如:FORM),
参数名(如:COLOR),
参数值(如:#FFFFFF),
标签结尾(如:〈/FORM〉,
最重要的还是标签名。请问用什么算法可以搞定?
请给出原理解释,有源码(Delphi)更好!
...全文
345
18
打赏
收藏
请问那位大哥有过开发HTML浏览器(读取网页标签的算法)的经验?100分送上
小弟正在开发一简易网页浏览器,需要在程序中识别网页标签, 包括:标签名(如:FORM), 参数名(如:COLOR), 参数值(如:#FFFFFF), 标签结尾(如:〈/FORM〉, 最重要的还是标签名。请问用什么算法可以搞定? 请给出原理解释,有源码(Delphi)更好!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Putao
2000-09-09
打赏
举报
回复
To deanjiang:
“空白符不只是空格,可以是“\n\b\r\s”...”
是什么意思,请指教。
Putao
2000-09-08
打赏
举报
回复
To deanjiang:
“空白符不只是空格,可以是“\n\b\r\s”...”
是什么意思,请指教。
deanjiang
2000-09-08
打赏
举报
回复
按照rfc文档做出来当然最好,不过IE与NS都不是这样做的,因为显示中的HTML大都不完全符合语法,最常见的就是该匹配的标记没有成对出现。你的要求并不高,所以就好实现了,不用看什么变异原理。下面是我的思路
1 识别标记:
标记开始的形式是<XXXX ,即“<”字符紧接着一系列的英文字母或数字,中间不可一有空白符,之后以空白符分隔;空白符不只是空格,可以是“\n\b\r\s”...
如果标记在一个注释内部、或在属性内就忽略掉。
2 识别属性
识别处标记的首部,之后出现属性,有两种情况:
1)单独的英文字母或数字序列,后面没有尾随“=”或“一系列空白符=”,可是做一个属性,如checked属性。(后面的描述大多可以间隔空白符,不一一说明了)
2)后面尾随“=”或“一系列空白符=”,则得到一个属性的名称,等号后面的如果出现“"”
则降下一个“"”之间的内容当作属性(这里不支持c风格的转移序列,而是用HTML转移序列。)。另一种情况,等号后面没有出现“"”,简单的把跟随的文字序列作为属性值,直到发现空白符或>符号。
属性结束后发现>符号,则一个标记处理完毕
3。实际系统中,结束标签可以忽略,</XXXX 只要发现就搜索到下一个>,将中间的字符忽略。
处理中需要使用堆栈,每识别完一个开始标签将其压栈,发现某一个标记的结束标签后,在堆栈中不断弹出栈顶元素,每弹出一个元素此元素的作用域就结束了,直到弹出的元素是相应的开始标记为止。实际上结尾标记从来不进入堆栈,这样便解决了标记不匹配的问题。
从实现的角度看,可以把超文本注释、属性的引号字符串,连续的非空白符文本,作为处理的最小单元,只可以出现在栈顶,当他们在栈顶时,压栈操作可以忽略。这样就只需要一遍单向扫描。至一点对实际的浏览器是必须的,因为要在文件完全下在完之前显示。
Putao
2000-09-08
打赏
举报
回复
To deanjiang:
“空白符不只是空格,可以是“\n\b\r\s”...”
是什么意思,请指教。
kill_kill01
2000-09-04
打赏
举报
回复
关注
Putao
2000-09-04
打赏
举报
回复
我只想实现让程序知道:这是一个标签.
请先回答这个最简单的问题!
各位大虾,拜托了!
killjapan05
2000-09-03
打赏
举报
回复
ok?
mars22
2000-09-03
打赏
举报
回复
如果用MFC编程,倒是可以直接使用CHtmlView类。
IE有的功能它基本都有。
Putao
2000-09-03
打赏
举报
回复
我只想实现让程序知道:这是一个标签.
请先回答这个最简单的问题!
Putao
2000-09-03
打赏
举报
回复
我只想实现让程序知道:这是一个标签.
请先回答这个最简单的问题!
Putao
2000-09-03
打赏
举报
回复
那么,如果我是想编一个网页语法检查器,改如何实现呢?
ahao
2000-09-03
打赏
举报
回复
HTML的的标签配对不是很严格,某些可以只有前半部,
某些可以只有后半部...
Putao
2000-09-02
打赏
举报
回复
to llt:
是英文的,头大了!!!
llt
2000-09-02
打赏
举报
回复
简单的办法就是找一个免费网页浏览器原码来参考。若想了解原理,可以看rfc1945、rfc2068。
bokei
2000-09-02
打赏
举报
回复
编译原理说白了就是讲如何对程序进行编译的算法,有很多讲这问题的书。
通常讲编译原理的书里都有一部分是讲语法分析的,可以看一下,原理都一样的。
killjapan05
2000-09-01
打赏
举报
回复
好好看看编译原理吧????
读入一字符串,然後进行处理!与编译原理有何干系?
Putao
2000-09-01
打赏
举报
回复
什么是编译原理,你有吗?请给我Email一份
subzero
2000-08-30
打赏
举报
回复
好好看看编译原理吧!
计算机视觉与OpenCV
算法
实战(C++/Python双语教学)
课程目的:OpenCV是应用非常广泛的开源视觉处理库,在图像处理、计算机视觉和自动驾驶中有着非常重要的作用。课程设计特色:(课程当前为第一期)1、C++与Python双语教学Python语言是在计算机视觉中应用最多的一种语言,在工作中,深度学习模型的训练基本上都是使用Python语言编写的训练代码。OpenCV在这个过程中用于图像的预处理(例如图像
读取
、数据增强)和后处理,还可以用于显示处理的结果,功能强大,使用方便。但是在功能的部署的时候,不管是部署在服务端还是PC端,
开发
语言基本上用的是C++,所以如何有效的使用OpenCV进行模型或者功能的部署尤为重要。C++语言应用的好坏,在面试中可以看出一个面试者的工程实践能力的强弱,两种语言的
开发
掌握好了可以使工作如虎添翼。2、全模块讲解我出版了一本图书《学习OpenCV4:基于Python的
算法
实战》,虽然这本书是写的基于Python的
算法
实战,但是实际上这本书有详细的介绍
算法
的C++接口,还有一些C++方向的案例,是以Python为主。图书出版的时候就想双语写作,只是限于篇幅没有成行。本课程不仅采用双语教学,更是对C++的每个模块都做讲解,我们知道,很多的书其实只讲imgproc,如果你翻开一本书图像的形态学运算和图像滤波都是作为独立章节讲解的,那么这本书基本上就可以确定是只是讲解了imgproc模块,但是其他的模块在工作中也有很重要的作用。例如:core模块定义了C++的基本数据结构和基本运算(如四则运算);highgui模块是可视化与交互的模块;feature2d是特征点与特征匹配相关
算法
所在的模块;ml是机器学习相关的模块;dnn是深度学习相关的模块,可以使用OpenCV进行深度学习模型的部署。这些是很多的书和课程都不会讲的。3、讲解细致本课程会从环境搭建开始讲解,环境搭建尤为重要。从我多年的授课
经验
总结来看,如果只是给了代码,很多的入门用户环境问题处理不好的话,后面的学习很难进行下去,甚至会丧失学习的信心。4、会讲解C++和Python的
开发
语法问题是入门用户的一大难关,特别是C++语言。大学只是教授了C语言相关的内容,C++很多同学只懂一点皮毛,所以写代码步履维艰,我们在讲解代码的过程中会顺带讲解C++和Python的内容。我们还会讲解编译相关知识,还有库的装载与链接,这些是学校里不会教的,目前也几乎没有课程讲解。5、讲师
经验
丰富我讲解过C++和OpenCV的多个课程,广受学员好评。我出版过两本图书《深度学习计算机视觉实战》和《学习OpenCV4》,两本书都是细致入微的讲解,主要针对的就是初学者,所以能够很好的处理课程的难易程度。6、讲义准备充分讲义准备的充分细致,标识清楚明确,重点和疑难点突出。
区域云LIS检验系统源码 商业级LIS全套源代码 预留标准HIS、仪器数据接入接口
系统完全采用B/S架构模式,扩展性强。整个系统的运行基于WEB层面,只需要在对应的工作台安装一个
浏览器
软件有外网即可访问。私信我了解源码具体内容!云LIS系统为实验室服务对象提供检验申请、采集标本、结果查询等功能;为实验室工作人员的核收标本、
分送
标本、传送资料、分析前处理、质量控制、单向或双向通讯、分析后处理、结果审核、打印报告、结果查询等标本检测过程提供全面的技术支持。。
工作中使用到的单词(软件
开发
)_2021-12-26_备份
■原文 工作中使用到的单词(软件
开发
)_sun0322-CSDN博客 目录 ■常用链接 2020 6/28 整理 2020 6/29整理 2020 7/6整理 ■2020/10/07 以降整理 ■2020/11/02 以降整理 ■2020/12/04 以降整理 ■2020/12/14以降整理 ■2021/01/01以降整理 ■2021/02/22以降整理 ■匿名内部类,lambda表达式,JDK7新特性,等等java相关 ■2021/03/18以降整理 Linux系统性能 ..
工作中使用到的单词(软件
开发
)_2021-10-23_备份
https://blog.csdn.net/sxzlc/article/details/104872052 目录 ■常用链接 2020 6/28 整理 2020 6/29整理 2020 7/6整理 ■2020/10/07 以降整理 ■2020/11/02 以降整理 ■2020/12/04 以降整理 ■2020/12/14以降整理 ■2021/01/01以降整理 ■2021/02/22以降整理 ■匿名内部类,lambda表达式,JDK7新特性,等等java相关 ■2021/03...
我在CSDN参与的3000个帖子
今日偶然翻到,感慨万千 1:申述:版主,是否扣了我的专家分? 2:
100
分急求,随机输出十个小写字母,但是,要求这十个字母不相同 3:求Sn=a+aa+aaa+…+aaa…a(n个a)之值 4:数组题 望高手帮忙! 5:呵呵,来推荐一下我的网站,本站提供大量当今流行的免费的音乐和免费电影,常用软件、游戏、精美图库下载,希望对网友有帮助!顺便散分! 6:VBA请教怎
数据结构与算法
33,008
社区成员
35,326
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章