Ruby rspec检查字符串以某些值开头

时间:2016-05-20 15:44:54

标签: ruby regex string rspec

我有一个以set start开头的字符串,然后通过随机生成的字母填充到252个字符。 (237个随机字符 - 这样结束长度为252个字符)

出于测试的目的,字符串以TESTDATAMENDNOW开头,其余为随机大写字母。

如何测试字符都是大写字母 并且该字符串以TESTDATAMENDNOW

开头

我曾尝试使用正则表达式来定义这个,但我不太清楚如何让它们正常工作,到目前为止我所尝试的似乎并没有起作用。

编辑:清晰度

2 个答案:

答案 0 :(得分:2)

expect(string).to match(/\ATESTDATAMENDNOW[A-Z]{237}\z/)

237因为252减去"TESTDATAMENDNOW"的长度为237

答案 1 :(得分:0)

这是另一种不使用正则表达式的方法:

str = "TESTDATAMENDNOW"
expect(string[0,str.size]).eq(str)
expect(string.delete("ABCDEFGHIJKLMNOPQRSTUVWXYZ").eq("")
expect(string.size).eq(252)