Вернуть данные между первой и пятой обратной косой чертой - PullRequest
0 голосов
/ 01 августа 2020
• 1000 * -4fd1-ae44-78dcda6c8ee9 / 36 / 3D1C3A58A039103375D320E524500A74

Пока мне удалось придумать только регулярное выражение, которое возвращает данные до первого backsla sh:

\/dataCapture\/(.+?)\/

Как мне расширить приведенное выше, чтобы включить данные до пятой backsla sh?

Ответы [ 3 ]

1 голос
/ 01 августа 2020

Чтобы решить этот шаблон регулярного выражения, вы должны использовать следующий код:

^\/dataCapture\/(.+?)\/(.+?)\/(.+?)\/(.+?)\/

Вы можете протестировать это регулярное выражение на этом сайте .

1 голос
/ 01 августа 2020

Я не знаком с JMeter, но понимаю, что он использует небольшой вариант движка регулярных выражений Perl5, поэтому я ожидаю, что сопоставление следующего регулярного выражения извлечет интересующую строку.

(?<=^dataCapture\/)(?:[^\/]*\/){3}[^\/]*(?=\/)

demo

Механизм регулярных выражений выполняет следующие операции.

(?<=             : begin positive lookbehind
  ^              : match beginning of string
  dataCapture\/  : match 'dataCapture\/
)                : end positive lookbehind 
(?:[^\/]*\/)     : match 0+ charsother than '/', followed by '/', in
                   a non-capture group
{3}              : execute the non-capture group 3 times
[^\/]*           : match 0+ chars other than '/'
(?=\/)           : positive lookahead asserts that the next char is '/'
1 голос
/ 01 августа 2020

Может быть, не самый чистый, но это делает работу выполненной:

const regex = /dataCapture\/([a-zA-Z0-9]+\/[a-zA-Z0-9\.\-]+\/[a-zA-Z0-9\.\-\_]+\/[0-9]+)\/.*/;

const value = "dataCapture/22E6F953EA6D445C8FB20E9D29A977D7/6.20.0-3c1e4b0c459eb93e43eb64fed7447a41fb4d4029/uuid_2b896c17-eb5c-4fd1-ae44-78dcda6c8ee9/36/3D1C3A58A039103375D320E524500A74";

console.log(value.match(regex)[1]); // => 22E6F953EA6D445C8FB20E9D29A977D7/6.20.0-3c1e4b0c459eb93e43eb64fed7447a41fb4d4029/uuid_2b896c17-eb5c-4fd1-ae44-78dcda6c8ee9/36
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...