2016-07-19 3 views
0

Я пытаюсь совместить фразу «/ $» с помощью конструктора RegExp, но никакое количество экранов, похоже, не помогает. У меня что-то не хватает?

RegExp("\/\$").test("/$") 
// false 
RegExp("/$").test("/$") 
// false 
RegExp("\/$").test("/$") 
// false 
RegExp("/\$").test("/$") 
// false 
+1

'RegExp ("\\ $") тест ("$")' – Rayon

+0

'RegExp (" \\/\\ $ "). Test ("/$ ")' –

ответ

2

Вы должны использовать \\ вместо \ и нет никакой необходимости, чтобы избежать / или использовать регулярное выражение /\/\$/ непосредственно. Проверьте RegExp documentation для получения дополнительной информации.

При использовании функции конструктора необходимы обычные правила escape-строки (предшествующие специальные символы с \ при включении в строку).

Например, /\w+/ эквивалентно new RegExp('\\w+')

console.log(
 
    RegExp("/\\$").test("/$") 
 
) 
 

 
//or 
 

 
console.log(
 
    /\/\$/.test("/$") 
 
)

См.: Javascript regular expression - string to RegEx object

Смежные вопросы