【发布时间】:2013-02-16 15:24:59
【问题描述】:
在 specs2 测试中,我正在使用 JSON 匹配器验证 json 字符串。我知道可以使用正则表达式来匹配这样的值
someJson must */("key")/("(one|other)".r)
是否有可能以一种简洁的方式使用其他字符串匹配器(例如包含)?
鉴于这个混乱的例子:
val someJson = """{"blob": "multiline string
|with various line endings"}"""
这个匹配器
someJson must */("blob")/contains("various")
看起来比
干净多了someJson must */("blob")/"[^v]various.*".r
这不是正确使用的表达方式,但在这种情况下可能有效。
【问题讨论】:
-
有什么具体的事情你想做而你不能用正则表达式做吗?
-
好吧,我想不出任何我不能用正则表达式匹配的字符串。也就是说,可读测试对我来说很重要。我将通过一个实际上与正则表达式混淆的示例来更清楚地说明问题。