regex - 使用正则表达式的空手道框架 JSON 路径解析不适用于整个单词匹配
问题描述
我正在努力匹配例如的名称。回复中的名字说:
'世界地图'
现在我想在空手道 jsonpath 中编写一个通用的正则表达式,它应该适用于“map”这个词,而不管它在多个词中的位置,例如 - 一个常见的脚本应该匹配下面的排列。
1 - 气候地图 2 - 沃尔兹地图 3 - 世界中国地图 4 - 大地图太小 5 - 大地图在那里
到目前为止我写的东西,这似乎不起作用
$..source..[?(@.name =~ /(\bmap\b)/i)]
谁能帮助我应该输入什么确切的正则表达式来检查上面示例中的“地图”世界。
解决方案
有时使用纯 Java 更简单:
* def str = 'foo map bar'
* assert str.contains('map')
* def hasMap = function(x){ return x.contains('map') }
* assert hasMap(str)
所以不要使用正则表达式,请参考文档的这一部分:https ://github.com/intuit/karate#self-validation-expressions
推荐阅读
- c# - 在 HostBuilder 中调用 BuildServiceProvider 以访问服务
- c++ - 不同的输出调试与发布
- telegram - Telegram API 使用文本帖子编辑媒体帖子
- javascript - 使用 JavaScript 更改输入类型 HTML
- python - Tkinter:如何取回框架的值而不是标签的值?
- html - 在使用锚标记从一个页面重定向到另一个页面之前,我们可以在 javascript 中调用一个函数,然后在反应中重定向到该特定页面
- android - 如何将数据从 Android 后台服务传递到活动
- ios - Xcode 11:签名者的自签名根
- postgresql - 如何在 Postgres 中运行相当于 Excel 的 GAMMALN 函数?
- angular - Angular 中的域模块是什么意思?