1
我試圖得到一個圓託槽裏面的內容選擇內部roundbracket內容,使用正則表達式
例如..如果我們有像var str="test exp (content needed)"
內容我試圖讓STR值「內容需要「;我如何使用正則表達式來實現它?我想看看情況,如果該字符串有一個像var str="test exp (content needed) test (tst)"
我試圖得到一個圓託槽裏面的內容選擇內部roundbracket內容,使用正則表達式
例如..如果我們有像var str="test exp (content needed)"
內容我試圖讓STR值「內容需要「;我如何使用正則表達式來實現它?我想看看情況,如果該字符串有一個像var str="test exp (content needed) test (tst)"
試試這個圓括弧超過一個OCCURENCES:
var m = /\(([^)]*)\)/.exec(str);
str = m[1];
剛一說明:記住,簡單的情況下,最好使用普通字符串的方法,如indexOf
和substring
,因爲它們通常對您而言更快更清晰。例如:
var i1 = str.indexOf("("), i2 = str.indexOf(")");
str = str.substring(i1, i2);
如果你想匹配所有括號之間的序列,你可以試試這個:
var m = str.match(/\([^)]*\)/g);
現在m
包含所有括號內的內容,包括的括號。如果你想獲得只是內部內容,試試這個:
m = m.map(function(match) {return match.slice(1, -1);});
請記住,這不適用於IE8和更早的版本,因爲它不支持map
馬託數組。要麼使用polyfill,要麼使用經典的for
循環。
它顯示.match不是函數 – Sam
@Sam給我一秒,我正在編輯:) – MaxArt
這是一個錯誤..我編輯了這個問題。 – Sam