Java XPath表达式,一个节点中有两个字符串

Java XPath表达式,一个节点中有两个字符串,java,android,xpath,htmlcleaner,Java,Android,Xpath,Htmlcleaner,我下载了html表单,用htmlCleaner清理它。 最初它看起来是这样的(现在它结构良好,但我不知道如何简单地显示它,我希望,这就足够了): 。。。 请填写您的用户名: 原因: .... 是否有XPath表达式可以提取“请填写您的用户名”和“原因”,但必须是两个单独的字符串? 另外,htmlCleaner并不支持所有表达式,下面是->您需要的只是: //input[@name="employee"]/@value //input[@name="reason"]/@value 或者(

我下载了html表单,用htmlCleaner清理它。 最初它看起来是这样的(现在它结构良好,但我不知道如何简单地显示它,我希望,这就足够了):

。。。
请填写您的用户名:

原因:

....
是否有XPath表达式可以提取“请填写您的用户名”和“原因”,但必须是两个单独的字符串? 另外,htmlCleaner并不支持所有表达式,下面是->您需要的只是:

//input[@name="employee"]/@value
//input[@name="reason"]/@value
或者(如果您需要
元素中的文本):


不能这样做,因为要提取的两段文本都是表单的唯一子级,如果它们都被包装成一个SPAN或DIV,则可以分别访问它们


您可能可以使用'child'和position

分别获取它们,您说的“两个单独的字符串”是什么意思?我需要xpath表达式来提取“请填写您的用户名:”和/或“Reason:”,但不是“请填写您的用户名:Reason:”,我可以使用
//form
。但是输入标记是关闭的,不包含我的行,在我的示例中,
//form/text()[1]
的工作原理与
//form
类似,并提取“请填写您的用户名:原因:”
//form/text()[2]
根本不起作用。可能是因为清理后的xml看起来不同,而在我上面的示例中起作用的东西在我的示例中不起作用。
//input[@name="employee"]/@value
//input[@name="reason"]/@value
//form/text()[1]
//form/text()[2]