我需要分别从
我正在使用下面的正则表达式但不起作用。它仅选择第一个值而不是**
出境:
<a:FlightSegment>[.\s\S]+?<a:LFID>(.+?)<.a:LFID>[.\s\S]+?<a:DepartureDate>(.+?)T(.+?)<.a:DepartureDate>[.\s\S]+?<a:LegCount>1<.a:LegCount>[.\s\S]+?<a:FCCode>(.+?)<.a:FCCode>[.\s\S]+?<a:FBCode>(.+?)<.a:FBCode>[.\s\S]+?<a:SegmentDetail>[.\s\S]+?<a:Origin>(.+?)</a:Origin>[.\s\S]+?<a:Destination>(.+?)</a:Destination>
入境:
<a:FlightSegment>[.\s\S]+?<a:LFID>(.+?)<.a:LFID>[.\s\S]+?<a:DepartureDate>(.+?)T(.+?)<.a:DepartureDate>[.\s\S]+?<a:LegCount>2<.a:LegCount>[.\s\S]+?<a:FCCode>(.+?)<.a:FCCode>[.\s\S]+?<a:FBCode>(.+?)<.a:FBCode>[.\s\S]+?<a:SegmentDetail>[.\s\S]+?<a:Origin>(.+?)</a:Origin>[.\s\S]+?<a:Destination>(.+?)</a:Destination>
回应:
`
<a:FlightSegment>
<a:LFID>132861</a:LFID>
<a:DepartureDate>2024-05-20T23:04:00</a:DepartureDate>
<a:ArrivalDate>2024-05-21T02:19:00</a:ArrivalDate>
<a:LegCount>2</a:LegCount>
<a:International>true</a:International>
<a:FareTypes>
<a:FareType>
<a:FareTypeID>1</a:FareTypeID>
<a:FareTypeName>ECONOMY</a:FareTypeName>
<a:FilterRemove>false</a:FilterRemove>
<a:FareInfos>
<a:FareInfo>
<a:FareID>38</a:FareID>
<a:FCCode>T</a:FCCode>
<a:FBCode>TPROI2P5</a:FBCode>
<a:BaseFareAmtNoTaxes>9</a:BaseFareAmtNoTaxes>
<a:BaseFareAmt>9</a:BaseFareAmt>
<a:FareAmtNoTaxes>9</a:FareAmtNoTaxes>
<a:FareAmt>9</a:FareAmt>
<a:BaseFareAmtInclTax>72.62</a:BaseFareAmtInclTax>
<a:FareAmtInclTax>72.62</a:FareAmtInclTax>
<a:PvtFare>false</a:PvtFare>
<a:PTCID>1</a:PTCID>
<a:Cabin>ECONOMY</a:Cabin>
<a:SeatsAvailable>13</a:SeatsAvailable>
<a:InfantSeatsAvailable>0</a:InfantSeatsAvailable>
<a:FareScheduleID>24973</a:FareScheduleID>
<a:PromotionID>0</a:PromotionID>
<a:RoundTrip>1</a:RoundTrip>
<a:DisplayFareAmt>9</a:DisplayFareAmt>
<a:DisplayTaxSum>63.62</a:DisplayTaxSum>
<a:SpecialMarketed>false</a:SpecialMarketed>
<a:WaitList>false</a:WaitList>
<a:SpaceAvailable>false</a:SpaceAvailable>
<a:PositiveSpace>false</a:PositiveSpace>
<a:PromotionCatID>0</a:PromotionCatID>
<a:CommissionAmount>0</a:CommissionAmount>
<a:PromotionAmount>0</a:PromotionAmount>
<a:ApplicableTaxDetails>
<a:ApplicableTaxDetail>
<a:TaxID>548</a:TaxID>
<a:Amt>47</a:Amt>
<a:InitiatingTaxID>-1</a:InitiatingTaxID>
<a:CommissionAmount>0</a:CommissionAmount>
</a:ApplicableTaxDetail>
<a:ApplicableTaxDetail>
<a:TaxID>1244</a:TaxID>
<a:Amt>1.62</a:Amt>
<a:InitiatingTaxID>-1</a:InitiatingTaxID>
<a:CommissionAmount>0</a:CommissionAmount>
</a:ApplicableTaxDetail>
<a:ApplicableTaxDetail>
<a:TaxID>1245</a:TaxID>
<a:Amt>15</a:Amt>
<a:InitiatingTaxID>-1</a:InitiatingTaxID>
<a:CommissionAmount>0</a:CommissionAmount>
</a:ApplicableTaxDetail>
</a:ApplicableTaxDetails>
<a:BundleCode/>
<a:OriginalCurrency>USD</a:OriginalCurrency>
<a:ExchangeRate>1</a:ExchangeRate>
<a:ExchangeDate>2024-04-30T00:00:00+00:00</a:ExchangeDate>
<a:CombinableTrips i:nil="true"/>
<a:ReturnFlightSegmentDetails/>
</a:FareInfo>
</a:FareInfos>
</a:FareType>
</a:FareTypes>
<a:FlightLegDetails>
<a:FlightLegDetail>
<a:PFID>132052</a:PFID>
<a:DepartureDate>2024-05-20T23:04:00</a:DepartureDate>
</a:FlightLegDetail>
</a:FlightLegDetails>
</a:FlightSegment>
<a:FlightSegment>
<a:LFID>131923</a:LFID>
<a:DepartureDate>2024-05-02T03:09:00</a:DepartureDate>
<a:ArrivalDate>2024-05-02T06:31:00</a:ArrivalDate>
<a:LegCount>1</a:LegCount>
<a:International>true</a:International>
<a:FareTypes>
<a:FareType>
<a:FareTypeID>1</a:FareTypeID>
<a:FareTypeName>ECONOMY</a:FareTypeName>
<a:FilterRemove>false</a:FilterRemove>
<a:FareInfos>
<a:FareInfo>
<a:FareID>113</a:FareID>
<a:FCCode>T</a:FCCode>
<a:FBCode>TPROI2P5</a:FBCode>
<a:BaseFareAmtNoTaxes>9</a:BaseFareAmtNoTaxes>
<a:BaseFareAmt>9</a:BaseFareAmt>
<a:FareAmtNoTaxes>9</a:FareAmtNoTaxes>
<a:FareAmt>9</a:FareAmt>
<a:BaseFareAmtInclTax>57.21</a:BaseFareAmtInclTax>
<a:FareAmtInclTax>57.21</a:FareAmtInclTax>
<a:PvtFare>false</a:PvtFare>
<a:PTCID>1</a:PTCID>
<a:Cabin>ECONOMY</a:Cabin>
<a:SeatsAvailable>20</a:SeatsAvailable>
<a:InfantSeatsAvailable>0</a:InfantSeatsAvailable>
<a:FareScheduleID>25013</a:FareScheduleID>
<a:PromotionID>0</a:PromotionID>
<a:RoundTrip>1</a:RoundTrip>
<a:DisplayFareAmt>9</a:DisplayFareAmt>
<a:DisplayTaxSum>48.21</a:DisplayTaxSum>
<a:SpecialMarketed>false</a:SpecialMarketed>
<a:WaitList>false</a:WaitList>
<a:SpaceAvailable>false</a:SpaceAvailable>
<a:PositiveSpace>false</a:PositiveSpace>
<a:PromotionCatID>0</a:PromotionCatID>
<a:CommissionAmount>0</a:CommissionAmount>
<a:PromotionAmount>0</a:PromotionAmount>
<a:ApplicableTaxDetails>
<a:ApplicableTaxDetail>
<a:TaxID>589</a:TaxID>
<a:Amt>15</a:Amt>
<a:InitiatingTaxID>-1</a:InitiatingTaxID>
<a:CommissionAmount>0</a:CommissionAmount>
</a:ApplicableTaxDetail>
<a:ApplicableTaxDetail>
<a:TaxID>1244</a:TaxID>
<a:Amt>1.62</a:Amt>
<a:InitiatingTaxID>-1</a:InitiatingTaxID>
<a:CommissionAmount>0</a:CommissionAmount>
</a:ApplicableTaxDetail>
<a:ApplicableTaxDetail>
<a:TaxID>1246</a:TaxID>
<a:Amt>31.59</a:Amt>
<a:InitiatingTaxID>-1</a:InitiatingTaxID>
<a:CommissionAmount>0</a:CommissionAmount>
</a:ApplicableTaxDetail>
</a:ApplicableTaxDetails>
<a:BundleCode/>
<a:OriginalCurrency>USD</a:OriginalCurrency>
<a:ExchangeRate>1</a:ExchangeRate>
<a:ExchangeDate>2024-04-30T00:00:00+00:00</a:ExchangeDate>
<a:CombinableTrips i:nil="true"/>
<a:ReturnFlightSegmentDetails/>
</a:FareInfo>
</a:FareInfos>
</a:FareType>
</a:FareTypes>
<a:FlightLegDetails>
<a:FlightLegDetail>
<a:PFID>131114</a:PFID>
<a:DepartureDate>2024-05-02T03:09:00</a:DepartureDate>
</a:FlightLegDetail>
</a:FlightLegDetails>
</a:FlightSegment>
`
尝试提取 LegCount 1 的值。
尚不清楚您要尝试提取什么形式的信息,但很明显使用正则表达式来解析 XML 不是最好的主意。
考虑切换到 XPath Extractor
请参阅 XPath 语言规范 和 XPath 教程 了解更多信息。