[英]Extract string between two words in Java
我有以下字符串。 我想使用Java提取兩個單詞<cases> and </cases>
之間的字符串。 我想根據我的要求提取字符串以形成有效的xml。
<cases><Final-Results><row>
<CRDATTIM>2014-03-26-05.22.22.339840</CRDATTIM>
<RECORDCD>C</RECORDCD>
<CRNODE>01</CRNODE>
<CKEY>2014-03-26-05.22.22.339840C01</CKEY>
<STATCD>CREATED</STATCD>
<UNITCD>CSMHCQA</UNITCD>
<WRKTYPE>CALL</WRKTYPE>
<issues><row>
<IKEY>2014-03-26-05.22.22.193840T01</IKEY>
<PRTY>999</PRTY>
<ISSUEID>20140326-155047-DT81694</ISSUEID>
<SUBJECT>Group</SUBJECT>
<ISSTYP>GROUP</ISSTYP>
<ISSCAT1>GROUP INQUIRY</ISSCAT1>
</row></issues></row></Final-Results></cases><?xml version="1.0" encoding="UTF-8"?>
<response>
<FOLDERID>COMM*H</FOLDERID>
</response>
我嘗試了以下代碼。 但是它對我不起作用。
Pattern pattern = Pattern.compile("<cases>(.*?)</cases>");
Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println(matcher.group(1));
}
我在這里有任何錯誤嗎?請分享您的想法來解決我的問題? 提前致謝。
嘗試更改:
Pattern pattern = Pattern.compile("<cases>(.*?)</cases>");
進入
Pattern pattern = Pattern.compile("<cases>(.*?)</cases>", Pattern.DOTALL);
順便說一句,如果它是一個格式正確的xml文檔,請使用解析器而不是regex來處理它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.