【问题标题】:Regular Expression in JMeter throws an error where as it is working in fine regex testerJMeter 中的正则表达式在正常的正则表达式测试器中工作时会引发错误
【发布时间】:2021-12-29 07:07:35
【问题描述】:

我收到了之前请求的回复。我正在尝试使用正则表达式来获取所需的文本。我的回复如下

{
  "screen": {
    "heading": "HEADING",
    "content": {
      "lines": [
        "Scan the source CBSE. "
      ]
    },
    "prompt": {
      "default": "",
      "display_value": "HEADING",
      "masked": {
        "on": "FALSE",
        "char": "*"
      }
    }
  }
}

在上面的 json 响应中,我试图提取单词 CBSE 。我在正则表达式测试器中使用以下正则表达式 - (?

但是当我在 JMeter 中检查相同的内容时,我得到了错误,它也没有保存在变量中。

JMeter 中的错误: org.apache.oro.text.MalformedCachePatternException: 无效表达式: (?

【问题讨论】:

标签: regex jmeter


【解决方案1】:

我认为您的正则表达式不适用于 Jakarta ORO 语法,请尝试更简单的方法,例如:

"Scan the source\s*(.+?)\. "

另外请注意,JMeter 提供了Boundary Extractor,因此只提供“左”和“右”边界就足够了,JMeter 将获得介于两者之间的所有内容:

此外,这种方法消耗的资源更少,有关详细信息,请参阅The Boundary Extractor vs. the Regular Expression Extractor in JMeter 文章。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多