我希望严格匹配{
"Request": {
"Path": {
"Matchers": [
{
"Name": "RegexMatcher",
"Pattern": "^/Systems XYZ (ABC)/2016.10/aaa/bbb/api/ccc/customers/.*$"
}
]
}
},
"Response": {
"BodyAsJson": { "result": "test" },
"Headers": {
"Content-Type": "application/json"
}
}
}
或45%
等字符串。
如果在2%
或abc34%
等所需字符串之前或之后添加了其他字符串,则不应该匹配。
答案 0 :(得分:1)
您可以使用以下正则表达式:
^\d+%$
^
字符串的开头。这样可以确保不允许使用字符串ABC45%
。\d+
至少一个号码$
字符串结束。这样可以确保不允许使用字符串45%ABC
以下是一个实例:
var regex = /^\d+%$/;
var samples = [
"123%",
"ABC12%",
"ABC123%ABC",
"123%abc",
"abc"
];
for(var i=0; i<samples.length; i++) {
var sample = samples[i];
console.log(sample, !!sample.match(regex));
}
&#13;
答案 1 :(得分:1)
这对你有用:
const testData = (data) => /^(?:[1-9]\d?%|0%)$/.test(data)
const test = ["1.2%","120%","12%","2%", "ABc%", "1,3%", "23", "abc34%", "34%cd212", "00%", "0%"]
for(let x of test){
console.log(`${x} ${testData(x)}`)
}
^
开头的字符串
{1}}从1到9的数字
[1-9]
可选1号
\d?
%符号
%
结束了刺痛
$
或0%