解析java中的非xml文件

use*_*073 1 java xml xhtml parsing

我想解析一个非纯xml的文档.例如

my name is <j> <b> mike</b>  </j>
Run Code Online (Sandbox Code Playgroud)

例2

 my name is  <mytag1 attribute="val" >mike</mytag1> and yours is <mytag2> john</mytag2>
Run Code Online (Sandbox Code Playgroud)

意味着我的输入不是纯xml.IT类似于html,但标签不是html.我如何在java中解析它?

G__*_*G__ 5

您的示例是有效的XML,但缺少文档元素.如果你知道这总是如此,那么你可以在整个事物周围包装一组虚拟标签并使用标准解析器(SAX,DOM ...)

另一方面,如果你得到更丑陋的东西(例如标签不匹配,或以重叠的方式间隔开),你将不得不做一些自定义的事情,这将涉及你必须决定的一些规则将是您的应用程序的独特之处.(例如,如何处理没有关闭的开始标记?如果结束标记位于父标记之外,我该怎么办?)