2014-11-26 2 views
0

Я пытаюсь создать регулярное выражение для частичного URL-адреса. Путь выглядит примерно так:Regex matching partial url

/stoic/variable/important/ 

Под «стоически» Я имею в виду, что часть стоик и имеет те же буквы, которые не будут меняться. Под «переменной» я подразумеваю, что эта часть динамична и будет меняться в зависимости от какого-то материала и должна быть буквенно-цифровой комбинацией. Под «важным» я подразумеваю часть, состоящую только из букв, которые я хочу точно зафиксировать.

Я попытался следующие без толку:

/^(/stoic/\w+\/important/)$/.test(someString) 
+1

'/ stoic/\ w + \/important /' escape all '/' здесь – Cheery

+0

Возможный дубликат [Соответствие прямого слэша с регулярным выражением] (http://stackoverflow.com/questions/16657152/matching-a- forward-slash-with-a-regex) –

+0

Да, я забыл избежать /, для любой будущей ссылки решение: '/^(\/stoic \/\ w + \/important \ /) $ /' – nmac

ответ

0

В качестве альтернативы спасаясь все косые черты, вы можете также использовать конструктор RegExp:

RegExp('^(/stoic/\\w+/important/)$').test('/stoic/foobar/important/') 
// => true 

Обратите внимание, что вам нужно используйте две обратные косые черты для классов символов, тогда как одиночные обратные косые черты вызовут только вызовы строки, такие как '\n'.