私の答えは、次のことを前提としています。
BookingCounts のリストのすべての要素は、LETTER と NUMBER の連結によって形成されます。数値の長さは常に 1 です。
リストのすべての要素は一意であり、一意の関係は文字の一意性のみによって定義されます。したがって、同じリストで要素 H2 H5 を見つけることはできません。
OP は、リスト内の H 要素のみを取得する必要があります。
これらの仮定に従うソリューションは次のようになります。
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:air="http://airnamespace.com" version="1.0">
<xsl:output method="xml" indent="yes"/>
<!-- Match the attribute BookingCounts inside air:BookingCodeInfo -->
<xsl:template match="air:BookingCodeInfo">
<info>
<code>H</code>
<status><xsl:value-of select="substring(substring-after(@BookingCounts, 'H'), 1, 1)" /></status>
</info>
</xsl:template>
</xsl:stylesheet>
これらの仮定の一部が正しくない場合は、教えてください。コードを変更します。