我想從這樣的字符串解除性質不同正則表達式使用一個簡單的正則表達式字面
var value = valueAccessor.match(/function(?=[^}]*value\s?:\s?(\w+))/im)[1]
我有不同的屬性我想舉一個列表,例如標籤ID,所以我遍歷他們使用RegExp
動態設置我的正則表達式。
// Iterate through id, label, value
for(var prop in obj) {
var propRegex = new RegExp('/function(?=[^}]*' + prop + '\\s?:\\s?(\\w+))/im');
var propValue = valueAccessor.match(propRegex)[1];
}
雖然propRegex源是相同的第一個例子,它返回undefined
的結構,因此意味着我不能提取的相對值。
任何人都可以解釋兩者之間的區別,我會出錯哪裏嗎?
'新的正則表達式(圖案,標誌);' – epascarello 2014-09-03 15:06:04
的'/'是** **分隔符正則表達式的文字,就像'「'都的分隔符字符串,它們告訴解析器模式開始和結束的地方,它們不是數值(模式)本身的一部分,如果你不使用正則表達式,不要在模式周圍放置'/' – 2014-09-03 15:09:37