javascript - 正则表达式匹配但排除

标签 javascript regex

我在 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/

相关文章:

javascript - 将 Javascript 变量传递给 CakePdf

javascript - 对于相同的事件但不同的对象 jquery 有相同的功能

javascript - 从输入传递参数

javascript - 利用正则表达式分析Cisco交换机端口信息

python 类 HTMLParser 错误地给出解析错误

javascript - 我如何使用正则表达式将这个 CSS block 转换为 LESS?

用于获取括号中数字之间的文本的 Java 正则表达式模式

javascript - Twitter Typeahead - 为谷歌分析捕获事件?

javascript - 每次 ng-repeat 迭代后更新变量

php - 转义 PHP 输出的 HTML 属性的双引号