2016-05-25 3 views
0

У меня есть строка, как var foo = 'foo {{Email18}}'. Но цифровая часть является переменной или неизвестной.Как получить подстроку javascript

Мне нужно получить подстроку {{Email18}}.

Я хочу сделать что-то вроде foo.search(/{{Email\d{1,}}}/), который вернет мне {{Email18}}. Как мне это сделать?

+0

В качестве примечания, квантор '+' является семантически эквивалентный вашему квантификатору '{1,}'. – Aaron

ответ

3

Использование match() с регулярным выражением /{{Email\d{1,}}}/

var foo = 'foo {{Email18}}'; 
 

 
console.log(
 
    foo.match(/{{Email\d{1,}}}/)[0] 
 
);

1

Или вы можете использовать небольшую строку манипуляции:

var str = "foo {{Email18}}"; 

function myFunction(arg) { 
    return arg.toString().substr(arg.indexOf("{"), arg.lastIndexOf("}")); 
}; 

var newStr = myFunction(str); 
+0

Хороший ответ, но я не вижу смысла использовать функцию здесь, если вы не передаете строку в качестве параметра. – Aaron

+0

@ Аарон: Здесь вы идете! :) – Ciprianis

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