我有这个字符串,我需要使用正则表达式将属性 Ccy 获取到 TtlIntrBkSttlmAmt。
你能帮我找到最好的图案吗?
<?xml version = "1.0" encoding = "UTF-8"?>
<Document xmlns = "urn:iso:std:iso:20022:tech:xsd:pacs.008.001.02" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance">
<FIToFICstmrCdtTrf>
<GrpHdr>
<MsgId>XXXXXXXXXXX</MsgId>
<CreDtTm>2013-07-23T16:30:14</CreDtTm>
<NbOfTxs>0</NbOfTxs>
<TtlIntrBkSttlmAmt Ccy = "EUR">0000.00</TtlIntrBkSttlmAmt>
<IntrBkSttlmDt>2013-07-24</IntrBkSttlmDt>
<SttlmInf>
<SttlmMtd>CLRG</SttlmMtd>
<SttlmAcct>
<Id>
<IBAN>XXXXXXXXXXXXXXXX</IBAN>
</Id>
</SttlmAcct>
<ClrSys>
<Prtry>XXXXX</Prtry>
</ClrSys>
</SttlmInf>
</GrpHdr>
谢谢。
最佳答案
我不会使用正则表达式,而是使用 XML 解析器。无论如何...
(?!= <TtlIntrBkSttlmAmt)Ccy = "[A-Z]+"
应该可以解决问题。编辑 [A-Z] 组以满足您的特定需求。
关于JAVA 正则表达式与 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17828978/