Я предполагаю, что это продолжение Генерация UUID в XSLT 1.0 .
Самое простое решение - сначала сгенерировать случайный символ из строки "89AB"
. Таким образом, вам нечего конвертировать.
Если вы хотите обработать существующий шестнадцатеричный формат git, вы можете использовать функцию translate()
для преобразования:
0 to 8
1 to 9
2 to A
3 to B
4 to 8
5 to 9
6 to A
7 to B
C to 8
D to 9
E to A
F to B
в соответствии с следующая таблица:
HEX BINARY
0 00 00
1 00 01
2 00 10
3 00 11
4 01 00
5 01 01
6 01 10
7 01 11
8 10 00
9 10 01
A 10 10
B 10 11
C 11 00
D 11 01
E 11 10
F 11 11