Java 解析html文本以获取输入字段
所以我现在有一大块html文本,我想根据文本中包含的内容生成一个输入表单。例如,如果文本包含“[%Name%]”,我希望能够读入该文本并识别其中的“Name”,从而为Name启用表单字段。将有多个标记([%age%]、[%height%]等) 我曾考虑使用Regex,但在做了一些研究之后,似乎用Regex解析html是一个可怕的想法。我遇到过,但它并不严格适用于我的实现。我将html格式的文本(我使用ckeditor创建)存储在数据库中 在java/groovy中有没有一种有效的方法来实现这一点?或者我应该创建一个类似于示例的算法(我不太确定给定的算法会有多有效,因为它们似乎是围绕相对较小的字符串构建的,而我要解析的字符串可能会非常大(一个15-20页的文档))Java 解析html文本以获取输入字段,java,groovy,Java,Groovy,所以我现在有一大块html文本,我想根据文本中包含的内容生成一个输入表单。例如,如果文本包含“[%Name%]”,我希望能够读入该文本并识别其中的“Name”,从而为Name启用表单字段。将有多个标记([%age%]、[%height%]等) 我曾考虑使用Regex,但在做了一些研究之后,似乎用Regex解析html是一个可怕的想法。我遇到过,但它并不严格适用于我的实现。我将html格式的文本(我使用ckeditor创建)存储在数据库中 在java/groovy中有没有一种有效的方法来实现这一点
提前感谢我认为最好使用它,而不是重新安装车轮。对于您的任务来说,它是一个非常好的工具,使用它的选择器语法可以很容易地在html页面中获取任何内容。查看他们网站中的用法示例。自己编写HTML解析器只是自找麻烦。如上面所提到的,使用一个库,或者考虑扩充您的实现。如果您有一个适当的文档(即,XHTML),您可以使用XPath和/或XSLT。否则,构建Dom可能是最好的。但是,如果您自己创建文本,那么在此阶段可能更容易获得相关信息。