I'm trying to pull the digits out of a user's CN, and then prepend a fixed string. Does anyone know why this behavior is occurring and/or how to preserve the actual capture group?

[07/23/17 16:28:23.417]:UTILITY ST: Action: do-set-local-variable("username",scope="policy",token-replace-all(".+(\d+).+","xdor\1",token-attr("cn"))).
[07/23/17 16:28:23.418]:UTILITY ST: arg-string(token-replace-all(".+(\d+).+","xdor\1",token-attr("cn")))
[07/23/17 16:28:23.419]:UTILITY ST: token-replace-all(".+(\d+).+","xdor\1",token-attr("cn"))
[07/23/17 16:28:23.420]:UTILITY ST: token-replace-all(".+(\d+).+","xdor\1",token-attr("cn"))
[07/23/17 16:28:23.421]:UTILITY ST: token-attr("cn")
[07/23/17 16:28:23.421]:UTILITY ST: Token Value: "xdor0001".
[07/23/17 16:28:23.422]:UTILITY ST: Arg Value: "xdor0001".
[07/23/17 16:28:23.422]:UTILITY ST: Token Value: "xdor1".
[07/23/17 16:28:23.423]:UTILITY ST: Arg Value: "xdor1".