Показать сообщение отдельно
  #11 (permalink)  
Старый 28.06.2017, 10:52
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,214

Сообщение от Teamur
Поучил строку:
"function MyFn(a,b=1,c=7){}"

Какую надо придумать регулярку, чтобы:
Уже лучше...

Сообщение от Teamur
1) получить всё что после первого пробела (после "function ")
var str="function MyFn(a,b=1,c=7){}";
alert(str.substr(9));



Сообщение от Teamur
2) отсечь всё что после первой закрывающей скобки
var str="function MyFn(a,b=1,c=7){}";
alert(str.split(')')[0]+')');


Сообщение от Teamur
3) разбить "MyFn(a,b=1,c=7)" на две части: "MyFn" и "(a,b=1,c=7)"
var str="MyFn(a,b=1,c=7)";
var a=str.split('(');
alert(a[0]+' и ('+a[1]);


Сообщение от Teamur
4) из второй части убрать скобки, нап. так: "(a,b=1,c=7)".slice(1,-1)
var str="(a,b=1,c=7)";
alert(str.match(/\((.+)\)/)[1]);


Сообщение от Teamur
5) вернуть массив ["MyFn","a,b=1,c=7"] или объект {fn:"MyFn",args:"a,b=1,c=7"}
var str="MyFn(a,b=1,c=7)";
var o={};
alert(str.match(/.*(?=\()/));
o.fn=str.match(/.*(?=\()/);
alert(str.match(/\((.+)\)/)[1]);
o.args=str.match(/\((.+)\)/)[1];
Ответить с цитированием