各位,现在正在做一个自动化测试的程序, 希望能根据“已知的 正则表达式”来产生字符串,以用于测试,
比如: [a-zA-Z0-9*#.,\-'!$()&%/_^ ]* 
可以生成正确的字符串:asdfaeed-&&&&&/, 和错误的字符串::sdfs;;
有办法实现吗? 

解决方案 »

  1.   

    确实很有挑战性,但像这种复杂的情况:
    ((([0-1]?[0-9]?[0-9])|(2[0-4][0-9])|(25[0-5]))\\.){2}((25[0-5])|(2[0-4][0-9])|([0-1]?[0-9]?[0-9]))
    生成正确的可能性很低啊。我在想能不能将这个表达式的组成进行解析,找出他有几个本分组成,然后在去生成字符串。
    可谁知道怎样来分析 正则表达式的组成呢? 有现成的jar 包吗?
      

  2.   


    但现在项目的需要, 我想先对表达式解析 也是可行的,只求 高人的指点啊。MTracer v1.2 就能显示表达式的组成,不知有没有java方面的实现。