Как использовать регулярное выражение в XSLT 1.0?

Я использую XSLT 1.0. Моя входная информация может содержать эти значения

<!--case 1-->
<attribute>123-00</attribute>

<!--case 2-->
<attribute>Abc-01</attribute>

<!--case 3-->
<attribute>--</attribute>

<!--case 4-->
<attribute>Z2-p01</attribute>

Я хочу найти те строки, которые соответствуют критериям:

if string has at least 1 alphabet AND has at least 1 number,
then 
do X processing
else
do Y processing

В приведенном выше примере для случая 1,2,4 я должен иметь возможность выполнить обработку X . Для случая 3 я смогу выполнить обработку Y .

Я стремлюсь использовать регулярное выражение (в XSLT 1.0).

Во всех случаях атрибут может принимать любое значение любой длины.

Я попытался использовать совпадение , но процессор вернул ошибку. Я пробовал использовать функцию translate , но не уверен, правильно ли она использовалась.

Я думаю.

if String matches [a-zA-Z0-9]* 
then do X processing
else
do y processing.

Как мне реализовать это с помощью синтаксиса XSLT 1.0?

17
задан Wayne Burkett 18 January 2012 в 20:20
поделиться