响应前缀固定后缀为随机数 如何使用通配符实现匹配校验
字符串匹配适配方案
方案一:前缀匹配(最简实现,无需通配符)
直接判断响应内容是否以固定字符串AxlRose开头即可满足需求,原代码修改后如下(以类C#语法为例,其他语言对应替换开头判断方法即可):
// 判断字符串开头是否为AxlRose,忽略后缀内容 if (resp.StartsWith("AxlRose")) { Report.Success("User found"); } else { Report.Failure("User not found"); }
常用语言对应前缀判断方法:
- Python:
resp.startswith("AxlRose") - Java:
resp.startsWith("AxlRose") - JavaScript:
resp.startsWith('AxlRose') - Go:
strings.HasPrefix(resp, "AxlRose")
方案二:正则匹配(严格校验后缀规则)
如果需要严格限制后缀只能为数字,不能出现其他字符,可以使用正则规则实现通配匹配,匹配规则为^AxlRose\d*$,其中\d*代表匹配任意数量的数字字符,示例代码如下:
using System.Text.RegularExpressions; if (Regex.IsMatch(resp, @"^AxlRose\d*$")) { Report.Success("User found"); } else { Report.Failure("User not found"); }
两种方案按需选择即可,仅需要匹配前缀选方案一性能更高,需要校验后缀格式选方案二。
内容的提问来源于stack exchange,提问作者AlfredoK
相关产品推荐
相关产品推荐

