2014-01-26 30 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); 
相關問題