我在XML文件中有以下数据。
<Message number=1>
<Field name="option1" type="Enumerated" desc="Interpret this field as the Number to which the Sector is slaved: 0 = Some Text for option 1 = A Different text option 2 = Yet another text option 8 – 10 = Reserved."/>
<Field name="option2" type="Enumerated" desc="Interpret this field as data rate 4 = 2Mbit 5 = 1Mbit 6 = .5MBit"/>
</Message>
<Message number=2>
<Field name="option3" type="Enumerated" desc="Interpret this field as the altitute. 0 = 100 feet 1 = 200 feet 2 = 300 feet 3 – 5 = SPARE."/>
</Message>
我想将desc属性解析为以下xml格式:
<Enumerations>
<Enumeration name="option1">
<Enumerator value="0" name="Some Text for option"/>
<Enumerator value="1" name="A Different text option"/>
<Enumerator value="2" name="Yet another text option"/>
<Enumerator value="8" name="Reserved"/>
<Enumerator value="9" name="Reserved"/>
<Enumerator value="10" name="Reserved"/>
</Enumeration>
<Enumeration name="option2">
<Enumerator value="4" name="2Mbit"/>
<Enumerator value="5" name="1Mbit"/>
<Enumerator value="6" name=".5MBit"/>
</Enumeration>
<Enumeration name="option3">
<Enumerator value="0" name="100 feet"/>
<Enumerator value="1" name="200 feet"/>
<Enumerator value="2" name="300 feet"/>
<Enumerator value="3" name="SPARE"/>
<Enumerator value="4" name="SPARE"/>
<Enumerator value="5" name="SPARE"/>
</Enumeration>
<Enumerations>
我遇到的问题是我的数据xml文件(超过4K行)对于字符串的枚举部分有不同的起始字符(:或,或#34;&#34;)。
虽然我可以使用xsl:analyze-string
,但我无法确定正确的正则表达式。