J'essaie d'extraire la valeur de l'identifiant de session de l'en-tête de réponse. Existe-t-il une autre manière que d'utiliser lookbehind dans jemeter? J'ai vérifié mon regex dans regexformatter et son fonctionnement comme prévu, mais comme jmeter ne prend pas en charge lookbehind, la solution ne fonctionne pas pour moi.
En-tête de réponse:
(?<=x-session-id: ).{0,16}
L'expression régulière utilisée est:
Expires: 0 X-Frame-Options: DENY x-session-id: 1a5e099f-5234-4 X-Application-Context: test:8080
Quelqu'un peut-il m'aider? p >
3 Réponses :
En supposant que le dernier caractère de l'identifiant de session sera des chiffres. Ensuite, vous pouvez utiliser ce qui suit. Si vous pensez que le deuxième groupe dans l'identifiant de session sera composé de chiffres, remplacez le deuxième \ w +
par \ d +
et cela servira le but. Faites-moi savoir si vous pensez que l'autre ensemble de données peut échouer avec cette expression régulière.
On dirait que vous avez une compréhension de Regex donc ne pas mentionner l'explication. Faites-moi savoir si cela ne fonctionne pas pour vous. Je vais essayer de trouver une autre approche, mais dans ce scénario, veuillez donner plus de jeux de données. Bonne chance.
Merci @UBIK LOAD PACK. Cela a fonctionné. Je vous en suis reconnaissant
Selon le chapitre Expressions régulières du Manuel de l'utilisateur JMeter :
Notez que
(? <= regexp)
- lookbehind - n'est pas pris en charge.
Vous pouvez donc simplement utiliser quelque chose comme: x-session-id: \ s + (. +)
et cela devrait fonctionner correctement:
Plus d'informations: Utilisation d'expressions régulières pour extraire des jetons et des ID de session dans des variables
Utilisez
x-session-id: * ([0-9 -] +)
et$ 1 $
comme valeur de modèle.