我想在桌面应用程序中用 java 搜索和突出显示 html 文件中的 多个 短语,就像在网络浏览器中完成的那样,所以 html 标签 (在 <
和 >
内)被忽略 但有些标签如 <b>
没有被忽视。搜索示例时 each table
在文中...each <b>table</b> has name...
将突出显示,但在文本中 ...has each</p><p> Table is...
它不会突出显示,因为 <p>
标签打断了文本的意思。
在网络浏览器中,这是以某种方式实现的,我怎样才能实现这个实现?或者网上有一些资源吗?我试过谷歌,但没有成功:(
最佳答案
浏览器不是在实际的 HTML 文件中搜索,而是在该 HTML 的呈现输出上搜索。
获取合适的 HTML 渲染器并将其输出为文本。然后使用适当的字符串搜索算法搜索该文本输出。
您在问题中突出显示的示例将导致呈现的 HTML 输出中出现换行符,因此正常的字符串搜索算法将按照您的预期运行。
关于java - Web 浏览器搜索是如何实现的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3708879/