无法使用 Fare 从复杂的正则表达式生成字符串

Not able to generate string from complex regular expression with Fare

我正在使用 Fare 库 https://github.com/moodmosaic/Fare/ 从正则表达式生成随机字符串。到目前为止,它一直在正常工作。

我现在想要的是 "The Password must have a minimum/maximum of 8 characters, including one special character, atleast 1 digit and atleast capital letter." 允许的特殊字符是 !#$%^&*()=,.

为此,我创建了表达式

 ^((?=.\d)(?=.[A-Z])(?=.*\W).{8,8})$

但它没有生成有效的表达式 请检查是什么问题

我正在生成正则表达式:

var secret = new Xeger(ConfigurationManager.AppSettings["expression"]).Generate();
Console.WriteLine(secret);

我已经更新了模式要求

如果 Fare 不支持前瞻,那么您可以尝试使用没有任何此类前瞻的不同正则表达式:

^([0-9])([A-Z])([!@#%*()$?+-])([a-zA-Z0-9]{ 5})$

所以这个正则表达式可以用来验证密码,但是我们会限制用户首先输入一个数字,第二个是大写字母,第三个是特殊字符,其余的是字母数字字符的混合。