基于正则表达式生成随机字符串的Java代码

基于正则表达式生成随机字符串的Java代码,java,Java,基于正则表达式生成随机字符串的Java代码。我尝试了generex库,但它没有给出精确的输出。例如: Generex generex = new Generex("^[6-9]\\d{9}$"); System.out.println(generex.random()); 输出为:^8677547981美元 虽然我期望输出为8677547981,但似乎generex无法处理诸如“^”和“$”等特殊字符 有人能帮忙吗?通用不需要^和$。它创建的内容与正则表达式完全匹配

基于正则表达式生成随机字符串的Java代码。我尝试了generex库,但它没有给出精确的输出。例如:

       Generex generex = new Generex("^[6-9]\\d{9}$");
       System.out.println(generex.random());
输出为:^8677547981美元 虽然我期望输出为8677547981,但似乎generex无法处理诸如“^”和“$”等特殊字符


有人能帮忙吗?

通用不需要
^
$
。它创建的内容与正则表达式完全匹配,而不是部分匹配

Generex generex = new Generex("[6-9]\\d{9}");
System.out.println(generex.random());

Generex使用
dk.brics.automaton.RegExp
类。它支持另一组正则表达式操作,如
java.util.regex.Pattern
。请参见

尝试转义美元符号:
\\$
重点不是它生成完整的字符串,而是^和$是有效的正则表达式字符,但它将它们视为文本。它应该在不修改的情况下处理有效的正则表达式,而不引入会导致后续正则表达式验证失败的无关字符。@JeffVincent您应该在Generex项目中注册该错误,如果还没有副本,我就不属于该项目