Javascript регулярное выражение не совпадает слово в середине - PullRequest
0 голосов
/ 30 апреля 2018

Я хочу проверить, что регулярное выражение не содержит слова в середине. мой код регулярного выражения ниже

/con\/.+\/top/.test("con/bottom/pop/down/top")

в этом регулярном выражении первым и последним будут "con" и "top", между ними. + Он не должен совпадать с /pop/.

1 Ответ

0 голосов
/ 30 апреля 2018

Вы можете использовать lookahead после каждого слеша:

const re = /con\/((?!pop\/)[^\/]+\/)+top/;
console.log(re.test("con/bottom/pop/down/top"))
console.log(re.test("con/bottom/popo/down/top"))
console.log(re.test("con/bottom/top"))
console.log(re.test("con/pop/top"))
console.log(re.test("con/popo/top"))
...