正则表达式需求:匹配前缀为SP-多位数字的字符串末尾'-多位数字'
解决方案
要匹配字符串结尾的-多位数字部分,直接使用正则表达式:
-\d+$
说明:
-:精准匹配减号本身\d+:匹配1位及以上的数字(\d代表数字,+表示至少出现一次)$:锚定到字符串结尾,确保匹配的是最后一段内容
为什么你的原表达式不生效?
你之前用的[^*-]*$中,[^*-]是排除型字符集,表示匹配除了*和-之外的任意字符,所以减号会被直接排除,自然无法匹配到减号本身。
进阶:确保字符串整体格式符合要求
如果需要同时验证字符串以SP-多位数字开头(不区分大小写),可以使用带捕获组的正则来提取目标部分:
^[Ss][Pp]-\d+(-\d+)$
此时捕获组1(即括号内的部分)就是你需要的-多位数字内容。
内容的提问来源于stack exchange,提问作者EliTheKing
相关产品推荐
相关产品推荐

