1

正则表达式运算符?对于可选的字符/类/组似乎失败了。空手道版本:0.9.9.RC1

我尝试将带有可选前导 + 号的电话号码与这些匹配,但无法匹配

  • <number>#regex \+?\d{6,11}</number>
  • <number>#regex (\+)?\d{6,11}</number>
  • <number>#regex [\+]?\d{6,11}</number>

在这里:https ://github.com/intuit/karate#the-karate-object at karate.extract(text, regex, group),我读到它regex遵循 Java 正则表达式规则,所以我在这里检查了我的正则表达式以确保我没有犯错(有太多“标准”正则表达式的味道):

https://www.freeformatter.com/java-regex-tester.html 在这里,所有上述正则表达式都可以按预期对带有或不带前导 + 的电话号码起作用。

当然也有使用替代品的替代品,但它很笨拙。这适用于空手道比赛:<number>#regex \+\d{6,11}|\d{6,11}</number>

我做错什么了吗?

4

0 回答 0