如何让Regex仅匹配完整目标字符串,排除前后多余字符?
正则匹配独立字符串解决方案
- 先修正原正则的问题:你写的
first-[3,6]-days里,[3,6]的写法有误,它会匹配3、逗号、6这三个字符。如果只是要匹配3或6,应该改成[36](去掉方括号里的逗号)。 - 要实现“仅匹配单独存在的目标字符串”,需要给正则加上字符串边界锚点:
^表示匹配字符串的起始位置$表示匹配字符串的结束位置
最终可用的正则是:
^first-[36]-days$ - 匹配验证:
- 能成功匹配:
first-3-days、first-6-days - 不会匹配:
hellofirst-3-days(开头有额外字符)、first-3daysfirst-3-days(前后有其他内容)
- 能成功匹配:
内容的提问来源于stack exchange,提问作者Chaitanya
相关产品推荐
相关产品推荐

