【发布时间】:2019-11-12 23:34:39
【问题描述】:
谁能解释一下有什么区别
@When("some text (.*)")
和
@When("^some text ([^\"]*)$")
?
前者在使用简单步骤时有效,但在使用数据表时,它仅映射到第一个表项。
【问题讨论】:
-
你是如何使用功能文件中的两个不同步骤的?
-
你能发布方法签名吗?
谁能解释一下有什么区别
@When("some text (.*)")
和
@When("^some text ([^\"]*)$")
?
前者在使用简单步骤时有效,但在使用数据表时,它仅映射到第一个表项。
【问题讨论】:
这里是几个常见的正则表达式的解释:
.* 匹配任何内容(或不匹配),字面意思是“任何字符(换行符除外)0 次或多次”
.+ 至少匹配任何一项
[0-9] 或 d 匹配一系列数字(或不匹配)
[0-9]+ 或 d+ 匹配一位或多位数字
"[^"]*" 匹配双引号中的某些内容(或不匹配)
an? 匹配 a 或 an(问号使 n 可选)
因此,根据您的问题,区别在于:
.* 将获取除新行之外的所有内容, ([^\"]*) 这将把所有的东西也换成新行
【讨论】: