我在 JavaScript 中使用 regex 时遇到一些问题。我需要测试一个 URL 是否匹配这个简单的模式,调用 RegExp.prototype.test(value: string): boolean
方法。
对于这样的 URL,我希望结果为 true
:
/somePath
/anyPath
/doesNotMatterWhatIsHere
我希望它为任何像这样的路径返回 false
:
/
/somePath/someWhereElse
/anyPath/1
/doesNotMatterWhatIsHere/pickle/chips/are/awesome
重点是,如果它是根 /path
,我想要 true
,如果它不是这个,我想要 false
.请帮忙。
我一直在使用http://regexr.com/ .
到目前为止,我的正则表达式 \/.+[^\/]
。
最佳答案
只需确保它以 /
开头并且不包含 /
其他任何地方
var test1 = "/somePath";
var test2 = "/anyPath";
var test3 = "/doesNotMatterWhatIsHere";
var empty = "/";
var fail1 = "/somePath/someWhereElse";
var fail2 = "/anyPath/1";
var fail3 = "/doesNotMatterWhatIsHere/pickle/chips/are/awesome";
regex = /^[/]([^/]+)$/;
console.log(regex.test(test1));
console.log(regex.test(fail1));
console.log(regex.test(empty));
关于javascript - 正则表达式匹配但排除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43382290/