2016-04-19 2 views
0

Ich habe eine Anfrage, auf der ich den regulären Ausdrucksextraktor verwendet habe. was gibt mir in Gruppe1 folgenden Wert:So bearbeiten Sie den Wert, der vom Extrahierer für reguläre Ausdrücke wiederholt wurde, um ihn an die nächste URL zu übergeben

filetodownload_g1=C:\\folder1\\folder2\\folder3\\folder4\\9_19_04_2016_09_40_44_279.zip 

Jetzt will ich diese bearbeiten ersetzen \\ mit \.

ich versucht:

${__javaScript(${filetodownload_g1}.replace("\\","\"))} 

Aber es funktioniert nicht. Es gibt nichts zurück (leer).

Können wir dies in einer benutzerdefinierten Variable speichern und bearbeiten? Wenn nicht, was ist der beste Weg, dies zu erreichen?

+0

seine noch nicht funktioniert. –

+0

Also, haben Sie versucht, '$ {__ javaScript ($ {filetodownload_g1} .replace (/ \\\\/g," \\ "))}'? –

+0

versuchte das gleiche aber immer noch nicht funktioniert. –

Antwort

1

Ich weiß nicht, warum brauchen Sie einen solchen Ersatz zu tun, hier aber Sie gehen:

${__javaScript("${filetodownload_g1}".replace(/\\\/g\,"\\\."),)} 

JavaScript Replace

Siehe JavaScript String replace() Method Referenz.

Denken Sie auch daran, dass Sie in JMeter-Funktionen jedes Komma mit einem umgekehrten Schrägstrich verlassen müssen, da Kommas für separate Funktionsparameter reserviert sind. Unescaped Komma -> falsche Anzahl oder falsche Reihenfolge der Argumente -> Fehlfunktion.

Siehe How to Use JMeter Functions Leitfaden für weitere Informationen über JMeter Funktionen

+0

Danke Dmitri T .. das hat perfekt funktioniert, es ersetzt \\ mit \. Aber ich bin mit weiteren Problemen konfrontiert: es gibt mir unter URL [Link] http://Application.server.com/Stop/DownloadFile?fileLocation=C:\Data Ordner \ app \ Client \ Time \ 9_19_04_2016_09_40_44_279.zip, wenn ich hit über URL im Browser, es funktioniert gut, aber Jmeter wirft mich illegale Zeichen in Abfrage Ausnahme ... könnte jemand erkennen, was soll ich tun, um dies zu beheben? –

+0

Die Lösung erhalten. Ich musste nur "Encode" ankreuzen? Option im HTTP-Anfragebereich. –

1

Javascript ersetzen Ausdruck ${__javaScript('${filetodownload_g1}'.replace(/\\\\/g\,'\\\\'))}

sein sollte, wie Sie benötigen ersetzen \\ mit \, sollte es sehr einfach, da \ die Escape-Zeichen in Javascript ist.

${__javaScript("${filetodownload_g1}")} //this will return the string with single \