Помимо того факта, что регулярные выражения не поддерживаются до тех пор, пока XSLT 2.0 и скобки не должны быть экранированы (а обратная косая черта не работает), есть еще одна причина, по которой этот код не будет работать: регулярные выражения XSLT неявно привязаны на обоих концах,Учитывая строку DK-2640 København SV
, ваше регулярное выражение соответствует только 2640 København
, поэтому вам нужно «дополнить» его, чтобы заставить его использовать всю строку:
regex=".*(\d{{4}}) ([A-Za-zÆØÅæøå]{{3,24}}).*"
.*
, вероятно, достаточно в этом случае,но иногда вам нужно быть более конкретным.Например, если есть более одного места, где \d{4}
может соответствовать, вы можете использовать \D*
в начале, чтобы убедиться, что первая группа захвата соответствует первой группе цифр.