我需要将浏览器中每个可见的 html 字放到 shell 中,如下所示:
资源:
<p><strong> My source sentence</strong></p>
目标:
<p><strong><span>My </span><span>source </span><span>sentence</span></strong></p>
但不要触摸任何标签、javascripts 等。
我怎样才能做到这一点?
没有不尊重,但这看起来是一件愚蠢的事情。但无论如何,您都可以尝试解析 HTML(如解析 XML,使用库),然后用新行替换每一行。
如果您的源是有效的 XML,那么编写一个 SAX 处理程序来读取源并以您想要的方式输出它应该是相当容易的,请查看本教程。
基本上每次遇到一个元素时,您只需将该元素输出到输出流。每次遇到一些文本时,只需使用正则表达式(或类似表达式)将其拆分为您想要的部分并将每个部分包装在 span 元素中。不过,这似乎是一件很奇怪的事情。
如果您的输入源不是有效的 XML(如果它是 HTML 以及所有可以被它破坏的东西),那么除非您可以首先将源转换为有效的 XML,否则它将变得更加困难。