Cucumber 3:如何定义正则表达式
Cucumber 3: How to define a regular expression
在 Cucumber 2 中,正则表达式表示为 (.*)
以获取胶水代码的参数。 Cucumber 3 的 expressions documentation 说 "You can use Regular Expressions or Cucumber Expressions." 但遗憾的是它没有提到语法。
在 Cucumber 3 和 4 中,()
表示可选文本,相当于 Cucumber 2 中的 (?:)
。
当 ()
保留用于可选文本时,如何在 Cucumber 3 中定义正则表达式?作为 {.*}
?
Cucumber 3 引入了 Cucumber 表达式。对于简单的用例,它们充当更具可读性的正则表达式。不幸的是 Java 没有区分正则表达式和字符串的语法。所以为了区分这两个 Cucumber JVM 使用 a heuristic。
strings are cucumber expressions by default
^definitely a regexp$
/surely a regexp/
this (.+) like a regexp
this look(s) like a cukexp
添加 ^
和结束标记 $
是获得正则表达式行为的最可靠方法。
在 Cucumber 2 中,正则表达式表示为 (.*)
以获取胶水代码的参数。 Cucumber 3 的 expressions documentation 说 "You can use Regular Expressions or Cucumber Expressions." 但遗憾的是它没有提到语法。
在 Cucumber 3 和 4 中,()
表示可选文本,相当于 Cucumber 2 中的 (?:)
。
当 ()
保留用于可选文本时,如何在 Cucumber 3 中定义正则表达式?作为 {.*}
?
Cucumber 3 引入了 Cucumber 表达式。对于简单的用例,它们充当更具可读性的正则表达式。不幸的是 Java 没有区分正则表达式和字符串的语法。所以为了区分这两个 Cucumber JVM 使用 a heuristic。
strings are cucumber expressions by default
^definitely a regexp$
/surely a regexp/
this (.+) like a regexp
this look(s) like a cukexp
添加 ^
和结束标记 $
是获得正则表达式行为的最可靠方法。