java normalize_java – XPath normalize-space()返回一系列规范化字符串
我需要使用XPath函數normalized-space()來規范化我想要從X
HTML文檔中提取的文本:
http://test.anahnarciso.com/clean_bigbook_0.html
我正在使用以下表達式:
//*[@slot="address"]/normalize-space(.)
這在我用來測試XPath表達式的Qizx Studio中非常有效.
let $doc := doc('http://test.anahnarciso.com/clean_bigbook_0.html')
return $doc//*[@slot="address"]/normalize-space(.)
這個簡單的查詢返回一系列xs:string.
144 Hempstead Tpke
403 West St
880 Old Country Rd
8412 164th St
8412 164th St
1 Irving Pl
1622 McDonald Ave
255 Conklin Ave
22011 Hempstead Ave
7909 Queens Blvd
11820 Queens Blvd
1027 Atlantic Ave
1068 Utica Ave
1002 Clintonville St
1002 Clintonville St
1156 Hempstead Tpke
Route 49
10007 Rockaway Blvd
12694 Willets Point Blvd
343 James St
現在,我想在我的Java代碼中使用前一個表達式.
String exp = "//*[@slot=\"address"\"]/normalize-space(.)";
XPath xpath = XPathFactory.newInstance().newXPath();
XPathExpression expr = xpath.compile(exp);
Object result = expr.evaluate(doc,XPathConstants.NODESET);
但是最后一行拋出異常:
無法將XPath值轉換為Java對象:必需的類是org.w3c.dom.NodeList;提供的值具有類型xs:string
很明顯,我應該改變XPathConstants.NODESET;我嘗試了XPathConstants.STRING,但它只返回序列的第一個元素.
我怎樣才能獲得類似Strings數組的東西?
提前致謝.
總結
以上是生活随笔為你收集整理的java normalize_java – XPath normalize-space()返回一系列规范化字符串的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网贷逾期没钱还怎么办
- 下一篇: 选股应该关注哪些要素 特别注意上市公司