2014-01-26 31 views
0

如何获得这两个字符串之间的所有内容?如何获取这两个字符串之间的所有内容?

ATemp.runFunct(<I WANT EVERYTHING IN BETWEEN THESE TWO PARENS>), // comment

我想在上面括号之间的一切,与外界字符串作为一个常数。

我已经试过多个正则表达式的表情,但他们没有工作,如:

ATemp\.runFunct\(*.?\), \/\/ comment

任何想法?谢谢! (PS,我用javascript)

+1

'*'应该是''你可能也想使用一个捕获组,这样就可以实际引用这部分后来上:?(。*?)''。 –

+0

@FelixKling谢谢!但是,当我执行'reg.exec(string)'时,我仍然没有匹配,即使字符串中有确切的模式... – user3236546

+0

也许它不是。它适用于你的例子:http://jsfiddle.net/KvmY2/。 –

回答

0

*.?应该是.*?。否则,您将匹配零个或多个(。你可能也想使用一个捕获组,这样你实际上可以参考后面的那部分:(.*?)

例子:

var match = /ATemp\.runFunct\((.*?)\), \/\/ comment/.exec('ATemp.runFunct(<I WANT EVERYTHING IN BETWEEN THESE TWO PARENS>), // comment'); 
alert(match[1]); 

.exec返回一个数组,其中第一个元素是完全匹配和第二元素是第一个捕获组的值(依此类推)。 ?

0

这里是FIDDLE:http://jsfiddle.net/mikea80/kSuk4/

var str = "(Hello world!)"; 
var startIndex = str.indexOf("("); 
var endIndex = str.indexOf(")"); 
var res = str.substring(startIndex + 1, endIndex); 
alert(res); 
相关问题