Java 我可以从正则表达式模式生成字符集吗?

Java 我可以从正则表达式模式生成字符集吗?,java,regex,Java,Regex,我有正则表达式,例如[ABC],[A-Z],[0-9],[A-Z,0-9],^A-Z]。我可以从正则表达式模式生成一组字符吗? 多谢各位 编辑: 在Java中。我发现random(int count,String chars)类用于生成随机代码 但我需要使用正则表达式模式生成代码 perl中的String::Random可能对您有所帮助,它使用正则表达式并给出满意数据的值 use String::Random; my $string_gen = String::Random->new; p

我有正则表达式,例如[ABC],[A-Z],[0-9],[A-Z,0-9],^A-Z]。我可以从正则表达式模式生成一组字符吗? 多谢各位

编辑: 在Java中。我发现random(int count,String chars)类用于生成随机代码


但我需要使用正则表达式模式生成代码

perl中的
String::Random
可能对您有所帮助,它使用正则表达式并给出满意数据的值

use String::Random;
my $string_gen = String::Random->new;
print $string_gen->randregex('\d\d\d'); # Prints 3 random digits


请注意,正则表达式可能比显示的字符集复杂得多

如果您仅限于角色集,我会看到两种可行的方法:

  • 自己解析字符集,实现well、regexp字符类的规则
  • 如果可以/希望忽略Unicode字符,只需循环所有256个字符(chr(0)-chr(255)),尝试使用正则表达式引擎将regexp与字符匹配
请提供您下次使用哪种语言的详细信息,以便于举例

#Prints 3 random printable characters
print $string_gen->randpattern("...");