我想提取由破折号delimitered以下串行代码的每一部分“ - ”在JMeter的分离正则表达式提取器。
串行代码: cdaf57ce-1a50-42fc-b548-2c84ad7911a8
预期的结果是:
Regular Expression Extractor 1: cdaf57ce
Regular Expression Extractor 2: 1a50
Regular Expression Extractor 3: 42fc
Regular Expression Extractor 4: b548
Regular Expression Extractor 5: 2c84ad7911a8
我想每个以下的正则表达式:
Regular Expression Extractor 1: (\w{8})-
Regular Expression Extractor 2: [^(\w{8})]-(\w{4})-[^(\w{4})]-[^(\w{4})]-[^(\w{12})]
Regular Expression Extractor 3: [^(\w{8})]-[^(\w{4})]-(\w{4})-[^(\w{4})]-[^(\w{12})]
Regular Expression Extractor 4: [^(\w{8})]-[^(\w{4})]-[^(\w{4})]-(\w{4})-[^(\w{12})]
Regular Expression Extractor 5: -(\w{12})
第一次和最后的正常工作,但另一些则没有。
谢谢
正则表达式提取器可以被用作,
user_variables_g1 = cdaf57ce
user_variables_g2 = 1a50
user_variables_g3 = 42fc
user_variables_g4 = b548
user_variables_g5 = 2c84ad7911a8
将输出
(\w+)(?:-|$)
尝试this.This应该做it.See演示。
http://regex101.com/r/gJ4uX1/2
一个简单的正则表达式,如:
([0-9a-f]{8})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{4})-([0-9a-f]{12})
应精细工作 - 的各个部分可从比赛中所捕获的基团而获得。
如果必须使用单独的正则表达式的每个部分,那么你就需要做一些像
-
\b[0-9a-f]{8}
-
(?<=[0-9a-f]{8}-)[0-9a-f]{4}
-
(?<=[0-9a-f]{8}-[0-9a-f]{4}-)[0-9a-f]{4}
-
(?<=[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-)[0-9a-f]{4}
-
(?<=[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-)[0-9a-f]{12}
这是在使用回顾后,这是不是最有效的结构,(在所有正则表达式引擎不支持),但应该工作。 \ b词边界一致
向前看符号是另一种方式 - 和更好的支持:
-
[0-9a-f]{8}(?=-)
-
[0-9a-f]{4}(?=-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b)
-
[0-9a-f]{4}(?=-[0-9a-f]{4}-[0-9a-f]{12}\b)
-
[0-9a-f]{4}(?=-[0-9a-f]{12}\b)
-
[0-9a-f]{12}\b
您使用的一个领域,以验证该串行代码试试这个简单的正则表达式:
^[a-zA-Z0-9]{8}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{4}-[a-zA-Z0-9]{12}$
火柴:
cdaf57ce-1a50-42fc-b548-2c84ad7911a8
CDAF57CE-1A50-42FC-B548-2C84AD7911A8
12asCda1-23ON-324F-Bse3-htskjas1234q