【发布时间】:2019-03-03 10:25:27
【问题描述】:
在我的 Java 项目中,我需要匹配下一个文本。 我使用 WireMock 来存根请求。所以我需要编写正则表达式来查找期望请求并返回存根响应。 在 WireMock 中,我需要编写正则表达式来拦截 http 请求。
假设我有 2 个 json:
{
"action": "Handler:GET_DICTIONARY",
"locale": "en",
"data": {"dictionary_type":"EXCHANGE_RATES_AS_DICTIONARY"}
}
和
{
"action": "Handler:GET_DICTIONARY",
"locale": "en",
"data": {"dictionary_type":"MTS"}
}
我只需要通过正则表达式选择第二个 json。识别第二个 json 的唯一文本是:
第一行:GET_DICTIONARY
与
第三行:MTS
什么是正确的正则表达式?
我尝试了这个正则表达式,但它没有帮助:
GET_DICTIONARY\(.*\r\n\)\{2\}.*MTS
【问题讨论】:
-
为什么要使用正则表达式?改为解析 JSON
-
我使用 WireMock 来存根请求。所以我需要编写正则表达式来查找欲望请求。
-
仍然,使用 json 解析器
-
@mvp 在 WireMock 中我需要编写正则表达式来拦截 http 请求。
-
拦截http请求并使用json解析器。如果它不解析,则测试失败。