javascript - jmeter代码从提取的Url中删除crlf

标签 javascript jmeter

我需要从 jmeter 中的字符串中删除尾随的 crlf。我使用了以下功能

${__javaScript('${varu_2}'.replace(/[\\r\\n]/g\,""))}

It gives me error "org.mozilla.javascript.EvaluatorException: unterminated string literal (#1)".

如有任何帮助,我们将不胜感激。

最佳答案

包含多行的变量的内联计算 (${varu_2}) 破坏了 JavaScript 计算。

例如,javascript 将被解释为:

'line1
line2'.replace(/[\\r\\n]/g\,"")

第一行是一个未终止的字符串,就像错误消息告诉我们的那样。

为了避免这种行为,我建议使用 JMeterVariables 对象,但由于 javascript 实现 ( Rhino ) 似乎不能很好地支持内联正则表达式,因此您应该使用 2 个替换函数而不是正则表达式:

${__javaScript(vars.get('varu_2').replace( "\r"\, "" ).replace("\n"\,""))}

或者,如果您愿意,可以使用 beanshell function您可以使用任何正则表达式:

${__BeanShell(vars.get("varu_2").replaceAll("[\r\n]"\,""))}

关于javascript - jmeter代码从提取的Url中删除crlf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19240459/

相关文章:

javascript - Google Maps API v3 - infoWindows 均具有相同的内容

javascript - 如何添加按下时切换视频声音的按钮?

javascript - Google Sheet 脚本 - 多个 getRange 循环

java - Jmeter 将结果保存为 Html

java - 在Jmeter中,如何等待上一个采样器(JDBC请求)完成然后启动新的采样器请求(Http请求)

javascript - 单击同一行中的任何复选框时,选中/取消选中表格行中的复选框

javascript - 通过 jQuery 将 HTML 代码更改为 HTML

performance - Jmeter:如何在 Jmeter、Beanshell 采样器中使用 ArrayList?

java - 如何将字符串列表从 JMeter 传递到 Java 代码

java - JMeter 无法读取自定义 search_paths 目录